Bộ sưu tập Phụ nữ đã kết hôn của Moon Power Wives tập 05. Diễn viên chính: Nanase Hiromi, Tachibana Hinata, Ayase Mana, v.v. DOC","lastmod":"2026-07-11","duration":"04:03:16","url":"/play/19164584.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMGViNTYzYjFjOWMwNmM4NTk0ODlmZjQyOGU0ZDQyN2MuanBn.cache","vod_id":18930957,"title":"Một cô gái dễ thương với hai bím tóc, khuôn mặt trẻ trung và vòng một khủng, đang trình diễn màn trình diễn gợi cảm. Nuốt trọn dương vật, quan hệ tình dục bằng miệng, dụng cụ rung hình trứng, thủ dâm, thâm nhập từ bên hông và đẩy hông. Vô cùng quyến rũ, đừng bỏ lỡ nếu bạn thích.","lastmod":"2025-12-14","duration":"01:12:10","url":"/play/18930957.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMDU3NTA2MzkzNDRkNzdlNTNjOWEwMmYxMjM3NzYyNDkuanBn.cache","vod_id":18953307,"title":"chị gái của vợ","lastmod":"2025-03-22","duration":"01:20:11","url":"/play/18953307.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZWU5NTVmYjc4ZWU4MDRjMjk2MTVhZDY4YTg0NjU5NTAuanBn.cache","vod_id":18959416,"title":"Vụ bê bối trực tuyến bắt quả tang ngoại tình đã được phanh phui. ❤️ Người vợ khỏa thân nhưng vẫn bảo vệ người tình; dường như cô ấy đã tìm thấy tình yêu đích thực.","lastmod":"2025-12-14","duration":"00:07:57","url":"/play/18959416.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTExMTQvNWVlYjQ0ZWQ3ZDA3YmNmMzliOTk4YmEzODc1MGVhOWQuanBn.cache","vod_id":19062615,"title":"Bình luận về bánh trái cây: Sức hấp dẫn của cô gái văn chương mùa xuân","lastmod":"2025-12-13","duration":"14:55","url":"/play/19062615.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNjdmNmIzMjQ4MmU0NDkzN2NjNjdhNmQ3ZDBkODA5NjcuanBn.cache","vod_id":18930116,"title":"Một cô gái xinh xắn, ngọt ngào dùng quả trứng rung trên ghế tự sướng để kích thích âm đạo. Lông mu của cô ấy rất dày và quyến rũ; đừng bỏ lỡ nếu bạn thích.","lastmod":"2025-12-14","duration":"00:27:10","url":"/play/18930116.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNTVkNTUwNTM0YzlhMjJmNjgzYjcyZWMzNjc2ODVjZjcuanBn.cache","vod_id":19009745,"title":"Ưu đãi có thời hạn: 3480 → 1980 [Thân hình mảnh mai #Xuất tinh hai lần] Hãy để tôi cho bạn thấy phong cách của một người nổi tiếng nóng bỏng với dương vật trần trụi. Hai lần xuất tinh, đánh dấu tử cung. -cd2","lastmod":"2025-03-24","duration":"06:00","url":"/play/19009745.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvODk4YjllOTZiMTI2MmYyZjg4NjU4NTljYWY2Zjg2ZTcuanBn.cache","vod_id":19021604,"title":"Bị cám dỗ bởi đôi môi của quỷ dữ—hương thơm quyến rũ nhảy múa bên trong.","lastmod":"2025-03-24","duration":"01:01:27","url":"/play/19021604.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYjhiNzU5MjkxZWY0NWZhNWNjMGFjYmI0MGU3MjZhZGMuanBn.cache","vod_id":18966606,"title":"SVDVD-942 Thật đáng xấu hổ! Lén lút tấn công một cô gái nghiệp dư bằng máy rung cùng bạn trai của tôi! 22. Một studio gương ma thuật đặc biệt được thiết lập trong một quán rượu bình dân.","lastmod":"2025-12-14","duration":"04:07:06","url":"/play/18966606.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvODlkMzk5M2ExY2U0YjcyZGMwZjE0NDk1ODhiZDJhNzAuanBn.cache","vod_id":18957166,"title":"Một cô gái trẻ xinh đẹp trong chiếc vớ trắng quyến rũ để lộ khuôn mặt, khoe vòng một khi đang nghịch đồ chơi tình dục, rên rỉ khi đưa nó vào âm đạo. Theo lời bạn trai, cô lè lưỡi liếm dương vật to lớn của anh ta.","lastmod":"2025-03-22","duration":"01:50:59","url":"/play/18957166.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMzcxODRiYjNjYTNiZTVlMDFhNjU5MmM2ZjY1Y2JlZDQuanBn.cache","vod_id":18934064,"title":"[Phụ đề tiếng Trung] DASD-620 Vợ yêu khiến tôi cương cứng. Người ngoài cuộc thôi miên kẻ bị cắm sừng. Rin Chibana","lastmod":"2025-12-14","duration":"02:00:45","url":"/play/18934064.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA5MDcvNGQwYWVmNzhkOTQyZWFjMGJhNDAwMDQyNTRlYzkxMWMuanBn.cache","vod_id":19051332,"title":"Sự cương cứng của DASS557 không thể che giấu sự phấn khích của anh ta. Cô bạn gái ngực khủng của anh ta đã bị quyến rũ bởi dương vật to lớn, cơ bắp của anh ta.","lastmod":"2025-09-06","duration":"01:54:38","url":"/play/19051332.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA0MTYvYjEzMWJmMTY2YzIwNzRiNDE5ZDcxZTBjZDk4MDI4NzIuanBn.cache","vod_id":19029157,"title":"Một người cha không về nhà muộn vào ban đêm và một người mẹ kế đang chờ đợi với khát khao cháy bỏng. Nhiều lần xuất tinh cho đến sáng. Nakano Mako VENX-153-C.","lastmod":"2025-04-16","duration":"01:48:36","url":"/play/19029157.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvODJkNzNmOTI2NmFkMjdlMzM1MjcyYjY0Zjg4NTI3OGQuanBn.cache","vod_id":18987908,"title":"SY-189 Núm vú hồng…Con gái thật tuyệt vời. Cô giáo Kirishima Leona, 22 tuổi, cao 148cm…(Nghiệp dư, phòng bốn chiếu rưỡi, xuất tinh không che)","lastmod":"2025-03-23","duration":"02:24:34","url":"/play/18987908.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYWM5MzFiOTZmZTk3OTY3ZjQzMmM5N2EwZGViMGVkMmQuanBn.cache","vod_id":18932269,"title":"1pon 112018_001 Mizutori Fumino ~Sự cám dỗ của một thiên thần - Phiên bản đặc biệt~","lastmod":"2025-12-14","duration":"02:19:14","url":"/play/18932269.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMDVhZjEwN2FkYmRkMWI1ZThhMmViZWQxOWJlYzZlMWQuanBn.cache","vod_id":19018841,"title":"Xiao Aqiao cung cấp dịch vụ gái gọi trực tiếp; cô ấy nghiện xuất tinh và không thể kiểm soát bản thân.","lastmod":"2025-03-24","duration":"29:48","url":"/play/19018841.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNDMxOTRkYTMyNWIxZWQyMmIxZDA4OTQ3ZmExODk4N2EuanBn.cache","vod_id":18958706,"title":"413INSTC-277 [Cảnh quay riêng tư bị rò rỉ] Video POV thời trẻ của thần tượng Saka-kei mặc đồng phục gối vô tình để lộ dương vật và xuất tinh bên trong OK Paradise [Lộ mặt, Giải trí] (Shizuna giấu mặt)","lastmod":"2025-03-22","duration":"00:56:38","url":"/play/18958706.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMTMvZWE1YzczNDhkOGViOTBlZmZlMWY0NjZmOGUwZTVmOGIuanBn.cache","vod_id":19067320,"title":"PtoM quan hệ tình dục với một cô gái xinh đẹp tuyệt trần! Hazuki Mai 10musume_010824_01","lastmod":"2025-12-14","duration":"52:12","url":"/play/19067320.html"}]},
videoTitle: 'WANZ918 đã lén xuất tinh khi đang tham quan căn hộ mẫu. Vợ anh ta ở gần đó thì thầm những lời khiêu gợi với anh ta. (Rei)',
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=/`;
}
};
}