Hẹn hò đêm khuya. Gái bán thời gian qua đêm, da trắng, vòng ba gợi cảm, dễ thương và ngoan ngoãn, giống như một cặp đôi trẻ đang hẹn hò bí mật, trò chuyện và cười đùa vui vẻ.
Điệp viên bí mật Hoàng gia 008 lại mời một cô gái lẳng lơ đức hạnh đến dùng bữa và uống rượu, rồi bắt đầu quan hệ tình dục với cô ta trong chiếc quần hở đáy và tất đen. Anh ta mạnh mẽ thúc vào mông to của cô ta và xuất tinh hết.","lastmod":"2026-07-11","duration":"","url":"/play/19206686.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvOTZkMGI3NzFmOWNkNTUzNTExZDE0MWEzMTU1ODMxMzkuanBn.cache","vod_id":19091860,"title":"Những nữ thừa kế giàu có, xinh đẹp thường lừa tôi hiến tinh trùng bằng cách đặt phòng khách sạn với họ!","lastmod":"2025-03-26","duration":"0:01:00","url":"/play/19091860.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvM2MwZTM3N2NiNjU3YjJkMTZlZDE2NjE3NWUxM2QzYWEuanBn.cache","vod_id":19126148,"title":"SGSR223 Thời điểm tuyệt vời để nhậu nhẹt. Một nữ đồng nghiệp dễ thương mà tôi luôn để ý đang quan hệ tình dục nồng nhiệt khi say rượu. 12 người, 4 tiếng đồng hồ.","lastmod":"2025-03-26","duration":"4:00:10","url":"/play/19126148.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZWEwNWQ5OTliMjFkYmVhZGU4NTE1N2Y1N2U5YTU5OTcuanBn.cache","vod_id":19066997,"title":"Nữ tiếp viên hàng không siêu xinh đẹp \"Chị Bobo\" 01.07 và người tình đã có một cuộc chiến tình dục kéo dài ba tiếng đồng hồ, cưỡng hiếp dã man một cô gái mặc quần tất đen và quần jeans 1","lastmod":"2025-03-26","duration":"2:50:22","url":"/play/19066997.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA3MDgvYjcyNjEwZTZiOGMzOTkyNWQyMjJkY2Q2YzYzM2QxOWUuanBn.cache","vod_id":19142486,"title":"Tiếng rên rỉ, tiếng khóc, lời thoại tục tĩu, phụ nữ trưởng thành, người vợ lẳng lơ, ngoại tình","lastmod":"2025-07-07","duration":"0:11:24","url":"/play/19142486.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMWE0OWYyZjZjODRkODI1OTk1N2Y3YTg5MTM0YjRhZWYuanBn.cache","vod_id":19096145,"title":"Một cô phục vụ quán cà phê xinh xắn nhưng ranh mãnh với vòng một ngoại cỡ (cỡ G) quyến rũ bạn mà không cần mặc áo ngực! Đoán xem? Quán cà phê và khách sạn này cho phép ngoại tình và quan hệ tình dục xuất tinh!","lastmod":"2025-03-26","duration":"2:08:01","url":"/play/19096145.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvYTFkMzM3ZGEyNDdlMDBhYjE2ZTE1NDUyNDQ1NTY4ZGQuanBn.cache","vod_id":19046227,"title":"Muốn xuất tinh vào bên trong những cô gái nghiệp dư ngây thơ ♥","lastmod":"2025-03-26","duration":"1:26:05","url":"/play/19046227.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvYzBmMTA5MmQ3YmU0OGVjNzU4MDhkODc4ZjYxYTk1NDIuanBn.cache","vod_id":19057654,"title":"Cô bé dễ thương đang chơi đùa với âm đạo dâm đãng của chính mình.","lastmod":"2025-03-26","duration":"0:13:49","url":"/play/19057654.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvN2VlMmZhM2ZmYTBiMDdlY2YyY2Q4ZTI2NDU5YWFjMTguanBn.cache","vod_id":19186999,"title":"Một người phụ nữ đã kết hôn xinh đẹp, ngực nở nang đang ngoại tình; âm đạo của cô ta đang bị nhét đầy một dương vật to lớn trong khi cô ta gọi điện cho chồng mình.","lastmod":"2026-03-17","duration":"0:09:24","url":"/play/19186999.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvOGI3MjY5NzdlYTI4NzRiNGI4MzQ0MGUwN2RlNjVlNGMuanBn.cache","vod_id":19179733,"title":"Một bậc thầy về ứng dụng hẹn hò trở lại với những tác phẩm chưa từng được công bố của mình, trong đó anh ta có cảnh quan hệ tình dục mãnh liệt với một phụ nữ đã kết hôn đến từ Kyoto, chị Tingting, ở nhiều tư thế khác nhau, với những cảnh quay từ hai góc độ khác nhau cho thấy rõ khuôn mặt của cô ấy.","lastmod":"2026-02-11","duration":"1:19:20","url":"/play/19179733.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMTNmZmMxMWEwNDVhN2E4ZDgzZTc4NTljMTBkN2RhZjEuanBn.cache","vod_id":19180014,"title":"Một ổ cứng lưu trữ đám mây cá nhân đã bị hack và rò rỉ, hé lộ mối quan hệ tình dục nồng nhiệt giữa một cặp đôi sinh viên đại học chênh lệch tuổi tác. Những bức ảnh bị rò rỉ cho thấy cô gái đang quan hệ tình dục và chụp ảnh tự sướng; cô ấy khá xinh đẹp, có thân hình cân đối, tiếng rên rỉ quyến rũ và lời thoại tục tĩu.","lastmod":"2026-02-12","duration":"0:59:11","url":"/play/19180014.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMWExMGUyNWQ5NGI5OTU2NTcxNTIwYWEzMmNhZTQ2YzIuanBn.cache","vod_id":19122273,"title":"Phiên bản đầy đủ, không cắt ghép đầu tiên của cô chị gái xinh đẹp và quyến rũ đã được phát hành.","lastmod":"2025-03-26","duration":"0:59:12","url":"/play/19122273.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMTdjZDcyM2NlMDA0N2ZjODA4MTgzNGUwMzVmOGY2YTEuanBn.cache","vod_id":19030933,"title":"SSIS-507 Nhỏ nhắn, dễ thương với vòng một khủng, Adachi Yuri trải nghiệm lần đầu với ba cảnh nóng.","lastmod":"2025-03-26","duration":"2:30:47","url":"/play/19030933.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvNDMwNTZjYWIzOThiOWQ1ZjIzNTVmZTg2MjZhYTdkMTguanBn.cache","vod_id":19184331,"title":"Tuyển tập độc quyền 6 phần về các vụ ngoại tình liên quan đến trẻ em, bao gồm quan hệ tình dục bằng miệng, quan hệ tay ba và mại dâm trẻ em – nội dung gây sốc và mở mang tầm mắt dành cho các bà mẹ nội trợ.","lastmod":"2026-03-04","duration":"0:09:23","url":"/play/19184331.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA3MjkvMTI5ZGQyYzg5MGYyMjQwMGQ5ZDQ3ZTNkMDZiZDc1MGEuanBn.cache","vod_id":19146270,"title":"Một cô gái trẻ quyến rũ và một chàng trai trẻ điển trai đã có quan hệ tình ái trong một khách sạn.","lastmod":"2025-07-28","duration":"0:24:13","url":"/play/19146270.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvOTMyZjE2NTgzNTRlNDZlYTM5NzAzYmQzNzg3ZjU4YTcuanBn.cache","vod_id":19171182,"title":"Cô chị gái, với đôi chân tuyệt đẹp trong chiếc vớ đen, tạo dáng quyến rũ trong khi nắm lấy dương vật của em trai và liếm nó liên tục.","lastmod":"2025-12-31","duration":"0:25:46","url":"/play/19171182.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly9zYnp5dHBpbWc0LmNvbTozNTE5L3VwbG9hZC92b2QvMjAyNjAyMjctMS8yMWMxOTZlZTA3ODIxZDc4YTdmZTBhNTcxMGFhOWIxNy5qcGc=.cache","vod_id":19183255,"title":"Massage NTR Gương Thần: Cô bạn gái mảnh mai, ngực đẹp nhà bên cạnh bị NTR (ngoại tình), nhưng tôi không thể cưỡng lại kỹ năng tuyệt vời của cô chị gái ngực khủng, và cuối cùng đã quan hệ tình dục không dùng bao cao su. HSODA-093","lastmod":"2026-02-27","duration":"2:19:57","url":"/play/19183255.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvM2M2NDQ0Mzk3MTg0ZDQzZGU0OTZjYzRhOTRlMjM1MDguanBn.cache","vod_id":19027056,"title":"DVDMS-374 Phim AV nghiệp dư quay bằng camera giấu kín: Một tiểu thư/sinh viên đại học được yêu mến đối đầu với một trinh nữ cô đơn; Cuộc ái ân cuối cùng của thời đại Heisei!? Một buổi quay phim thực tế kéo dài hai ngày một đêm với sự tham gia của các diễn viên nghiệp dư; Lễ tốt nghiệp của trinh nữ được ghi hình bằng tổng cộng 31 camera!","lastmod":"2025-03-25","duration":"2:40:05","url":"/play/19027056.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvNjVkNTJmMWM0ZGJhNGY3NjMzZmE5Njk4MzhjYTVkNmEuanBn.cache","vod_id":19200799,"title":"Cô bé ngây thơ siêu dễ thương và đáng yêu. Cô bé dễ thương tự sướng bằng cách chơi với vùng kín của mình, loli nhảy múa khỏa thân, trêu chọc chó trong bộ đồ lót.","lastmod":"2026-05-23","duration":"0:34:06","url":"/play/19200799.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvN2RhMzg2MzFjMjhkMjRhYjI0NTQzMjliMDlhZWUwNzkuanBn.cache","vod_id":19197481,"title":"Cô tiếp viên quán karaoke hát, còn gã trai bao thì bú vú và vuốt ve vùng kín của cô ta – cảnh tượng ấy quá kích thích và khiêu khích đến nỗi cô ta không thể hát được nữa; chỉ có quan hệ tình dục bằng miệng và một dương vật to mới làm cô ta thỏa mãn.","lastmod":"2026-05-07","duration":"0:35:04","url":"/play/19197481.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMTUvZTQ4NGVhMTQxZjgxYjA3M2NmZTJkMTJhNWE1YzIwYWYuanBn.cache","vod_id":19168039,"title":"Một cuộc gặp gỡ đầy đam mê giữa một người chị gái có khả năng phun nước và một người phụ nữ quyến rũ, thân hình săn chắc, gợi cảm, người đã xuất tinh lên mặt cô ấy.","lastmod":"2025-12-15","duration":"1:05:15","url":"/play/19168039.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZjBiYjRiOTM3ODgwMGNhMDQzZmU0NTM3MWI1MDg3OTkuanBn.cache","vod_id":19066397,"title":"Thử nghiệm thực tế về những trải nghiệm kỳ quặc và táo bạo nhất của các nữ tiếp viên khách sạn?","lastmod":"2025-03-26","duration":"0:11:57","url":"/play/19066397.html"}]},
videoTitle: 'Hẹn hò đêm khuya. Gái bán thời gian qua đêm, da trắng, vòng ba gợi cảm, dễ thương và ngoan ngoãn, giống như một cặp đôi trẻ đang hẹn hò bí mật, trò chuyện và cười đùa vui vẻ.',
language: 'vi',
dataKey: '01',
loadingPlayer: true,
showShare: false,
pageUrl: '',
// RecommendedMovies 组件状态
isSingleColumn: false,
pageSize: 8,
currentPage: 1,
// 计算属性(使用 getter)
get layoutIconClass() {
return this.isSingleColumn ? 'icon-view-list' : 'icon-grid';
},
get layoutClass() {
return [
'row',
'g-3',
'row-cols-1',
this.isSingleColumn ? '' : 'row-cols-2',
'row-cols-lg-4'
].filter(Boolean).join(' ');
},
// 方法
onAppMounted() {
// 设置页面 URL
this.pageUrl = window.location.href;
// 保存观看历史
this.saveWatchHistory();
// 更新标签统计
if (this.videoData.tag && this.videoData.tag.length > 0) {
this.updateTagStats(this.videoData.tag);
}
// 发送点击统计
this.hitVideoId(this.videoData.id);
// 从 Cookie 读取布局偏好
const layoutCookie = this.getCookie('list_layout');
if (layoutCookie === 'single') {
this.isSingleColumn = true;
}
// 监听 iframe 加载完成,隐藏骨架屏
// 使用 setTimeout 确保 DOM 已完全渲染
setTimeout(() => {
const iframe = document.getElementById('v2-player');
const skeleton = document.getElementById('player-skeleton');
if (iframe && skeleton) {
// 定义隐藏骨架屏的函数
const hideSkeleton = () => {
skeleton.style.transition = 'opacity 0.3s ease';
skeleton.style.opacity = '0';
setTimeout(() => {
skeleton.style.display = 'none';
}, 300);
};
// 检查 iframe 是否已经加载完成
if (iframe.contentDocument || iframe.contentWindow) {
try {
// 如果 iframe 已加载,直接隐藏骨架屏
if (iframe.contentWindow.document.readyState === 'complete') {
setTimeout(hideSkeleton, 500);
return;
}
} catch (e) {
console.log('[Video] 跨域 iframe,无法检查状态:', e.message);
// 跨域情况下无法访问 contentWindow,继续监听 load 事件
}
}
// 监听 load 事件
iframe.addEventListener('load', () => {
console.log('[Video] iframe load 事件触发');
setTimeout(hideSkeleton, 500);
});
// 添加超时保护,确保骨架屏最终会被隐藏
setTimeout(() => {
if (skeleton.style.display !== 'none') {
console.log('[Video] 超时保护触发,强制隐藏骨架屏');
hideSkeleton();
}
}, 5000); // 5秒后强制隐藏
} else {
console.error('[Video] 未找到 iframe 或 skeleton 元素');
}
}, 0);
},
// 随机跳转
async jumpToRandomVideo() {
try {
const response = await fetch(`/api/qun/randomid?t=${Date.now()}`, {
headers: {
'x-data-key': this.dataKey,
'x-api-key': 'dagexxx.com'
}
});
const data = await response.json();
if (data?.status === 1 && data?.data?.id) {
window.location.href = `/${this.language}/play/${data.data.id}.html`;
} else {
console.error('获取随机视频失败:', data?.message || '未知错误');
}
} catch (err) {
console.error('获取随机视频失败:', err);
}
},
// 复制分享链接
copyShareLink() {
const input = this.$refs.shareInput;
if (input) {
input.select();
input.setSelectionRange(0, 99999); // For mobile devices
// 尝试使用现代 API
if (navigator.clipboard && navigator.clipboard.writeText) {
navigator.clipboard.writeText(this.pageUrl).then(() => {
alert('Đã sao chép liên kết!');
}).catch(() => {
// 降级到旧方法
document.execCommand('copy');
alert('Đã sao chép liên kết!');
});
} else {
// 降级到旧方法
document.execCommand('copy');
alert('Đã sao chép liên kết!');
}
}
},
// 切换布局
toggleLayout() {
this.isSingleColumn = !this.isSingleColumn;
this.setCookie('list_layout', this.isSingleColumn ? 'single' : 'multi', 30);
},
// 加载更多
loadMore() {
this.currentPage++;
},
// 保存观看历史
saveWatchHistory() {
try {
const storageKey = 'watchHistory';
let history = JSON.parse(localStorage.getItem(storageKey) || '[]');
// 解码 HTML 实体编码的标题
const decodeHtmlEntities = (text) => {
const textarea = document.createElement('textarea');
textarea.innerHTML = text;
return textarea.value;
};
const video = {
id: this.videoData.id,
title: decodeHtmlEntities(this.videoData.title),
image: this.videoData.images || this.videoData.preview,
duration: this.videoData.duration || ''
};
// 过滤掉已存在的相同 ID 视频
history = history.filter(item => item.id !== video.id);
// 添加新记录到最前面
history.unshift(video);
// 限制最多保存 100 条
if (history.length > 100) {
history = history.slice(0, 100);
}
localStorage.setItem(storageKey, JSON.stringify(history));
} catch (e) {
console.error('Failed to save watch history:', e);
}
},
// 更新标签统计
updateTagStats(tags = []) {
// HTML 实体解码函数
const decodeHtmlEntities = (text) => {
const textarea = document.createElement('textarea');
textarea.innerHTML = text;
return textarea.value;
};
const storageKey = this.dataKey + 'tagWatchStats';
const lastWatchedKey = this.dataKey + 'tagLastWatched';
const raw = localStorage.getItem(storageKey);
const stats = raw ? JSON.parse(raw) : {};
// 解码标签并统计
const decodedTags = tags.map(tag => decodeHtmlEntities(tag));
decodedTags.forEach(tag => {
stats[tag] = (stats[tag] || 0) + 1;
});
localStorage.setItem(storageKey, JSON.stringify(stats));
localStorage.setItem(lastWatchedKey, JSON.stringify(decodedTags));
},
// 点击统计
hitVideoId(id) {
fetch(`/api/qun/hit?type=play&id=${id}`, {
method: 'GET',
headers: {
'x-data-key': this.dataKey,
'x-api-key': 'dagexxx.com'
}
}).catch(err => {
console.error('点击统计失败:', err);
});
},
// Cookie 工具方法
getCookie(name) {
const value = `; ${document.cookie}`;
const parts = value.split(`; ${name}=`);
if (parts.length === 2) return parts.pop().split(';').shift();
},
setCookie(name, value, days) {
const expires = new Date(Date.now() + days * 864e5).toUTCString();
document.cookie = `${name}=${value}; expires=${expires}; path=/`;
}
};
}