Vợ tôi đang mang thai, và tôi bị cấm thủ dâm, nên tôi tiếp tục quan hệ tình dục với mẹ vợ, Suzuka, người đã đến Tokyo... Suzuka Ono, Rinka Ono, JUQ-801
Góa phụ bị trói - Một người vợ xinh đẹp, đau khổ và kiệt sức, quằn quại trong khoái lạc khi bị trói bằng dây thừng - 4 Diễn viên chính: Akari Shinmura, Aya Shiomi, Kurumi Tamaki và các nữ diễn viên khác Nadeshiko","lastmod":"2026-07-11","duration":"04:01:35","url":"/play/19164741.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvZWU1NmFiNGQ4OTkwZGRlN2FiY2Q3MGFiZjUzNjAwNmEuanBn.cache","vod_id":19159046,"title":"Video gây sốc về vụ ngoại tình nhục nhã của người mẫu khỏa thân NTR với ông chủ Yuuri Oshikawa, Yuuri Tsukawa, Madonna","lastmod":"2026-05-20","duration":"02:03:30","url":"/play/19159046.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvYzIzYmNmODQxNjVlNzI3MTBkNzEwMjIxOTNlYmVmMDEuanBn.cache","vod_id":19161092,"title":"Ngay cả mẹ chồng tôi cũng nghĩ tôi đang mang thai. (Yamaze Miki, Takara Eizou)","lastmod":"2026-06-01","duration":"02:15:11","url":"/play/19161092.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZjk4Y2IyOThmN2Y5YTBjNWFhYTQzYjczOWFlYTQ0ZjIuanBn.cache","vod_id":19011051,"title":"JUL096 Bắt đầu từ hôm nay, tôi cho người bạn thân nhất của mình mượn vợ trong ba ngày. — Hojo Maki…","lastmod":"2025-03-24","duration":"01:57:32","url":"/play/19011051.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMjcyYzc5NGQ0NjE3YjY0YWE0ZGJiNDQxMTBjMDkwZjMuanBn.cache","vod_id":18981774,"title":"Một người phụ nữ mặc quần tất và giày cao gót, trang phục hở hang, khoe thân hình gợi cảm trong một buổi phát trực tiếp. Cô làm theo hướng dẫn của những người hâm mộ nam, thực hiện các hành động vuốt ve ngực và kích thích vùng kín, với những cảnh quay cận cảnh. Cô cầu xin được quan hệ tình dục trong khi tự thỏa mãn, trải qua cực khoái âm vật đến mức gần như phun trào lên camera.","lastmod":"2025-03-23","duration":"00:45:24","url":"/play/18981774.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNjc4MDAyYzc2NDc5YWRkMTM0NDAyNzcxZDMzNDQ2NTkuanBn.cache","vod_id":19006441,"title":"IPX-248 Cô gái trẻ xinh đẹp và ngây thơ đạt cực khoái 4 lần, phần 2 độc quyền về tình dục, tất cả 5 cảnh! Những tư thế quan hệ đáng yêu đều có trong phim! Kaede thật đáng thương!","lastmod":"2025-03-24","duration":"03:40:11","url":"/play/19006441.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZTlmYWM1MmY1ZDA1YTM1YzEzMDc1NTc2MWVmNTZkNjAuanBn.cache","vod_id":19146070,"title":"Ngay cả khi đang lơ lửng trên không trung, tôi cũng sẽ không buông tay! Tôi yêu những chuyển động như pít-tông sẽ khiến bạn mang thai. Một bà mẹ đơn thân bị bạn của con trai mình nhắm đến và trải qua nhiều cực khoái cùng lúc. NHDTC-068","lastmod":"2026-03-02","duration":"02:09:52","url":"/play/19146070.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvMjJkMjc4NDg0YTBiNzRmYWI2OGE0OTkzMGJlM2Q5ZWEuanBn.cache","vod_id":19163200,"title":"Lần này vợ tôi (32) đã ngủ với một người đàn ông trẻ đang đi làm (20)... Nó đau đớn đến mức tôi phải làm một video để bán cho JET Video.","lastmod":"2026-07-11","duration":"02:58:23","url":"/play/19163200.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA4MTcvZjY4OTMzNzIzMTUyYTc4NDJjZGQ4ZTAyY2RmOWJiZWQuanBn.cache","vod_id":19047529,"title":"[Về người nổi tiếng trên mạng] Video tự sướng của Nina, một phụ nữ trưởng thành quyến rũ hàng đầu, bị rò rỉ.","lastmod":"2025-08-16","duration":"34:30","url":"/play/19047529.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMWY1ZDczZmFkZjJlMjI5Zjg1MGQ1ZDM4ZGNmZjYzZDIuanBn.cache","vod_id":18939424,"title":"REAL-705 Nữ sinh mang thai, bị cưỡng hiếp và bị xuất tinh vào bên trong 20 lần liên tiếp - Aoi Reina","lastmod":"2025-12-14","duration":"02:00:07","url":"/play/18939424.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA0MjQvNWNiZDA4MDAxNTY4NjJiM2ZhMTQ3NzE3N2U3NWE5MWYuanBn.cache","vod_id":19030617,"title":"Đưa phụ nữ đến nhà thổ để thỏa mãn xuất tinh liên tục! Cô vợ ngực khủng, cực kỳ dâm đãng, Saki, 28 tuổi, Tsukimori Yuno, EYAN-150-C","lastmod":"2025-04-24","duration":"02:48:09","url":"/play/19030617.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvODFmYmUyZmFjM2FjNjA1MWQ4OTU1YzEzMzExYjJjODMuanBn.cache","vod_id":19150217,"title":"Sau khi liên tục cho người dì mà anh ta ngưỡng mộ uống thuốc kích dục trong 10 ngày, bà ấy đã trở thành một món đồ chơi tình dục mà anh ta có thể tùy ý sử dụng trong lúc lên đỉnh... ROE-459","lastmod":"2026-03-26","duration":"02:02:37","url":"/play/19150217.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZmVhMmY0NjRmYjRmZTY5OGJlZjIxZDgyYjRkZjhjYTEuanBn.cache","vod_id":19139689,"title":"Nữ sinh trung học xuất tinh khi thủ dâm","lastmod":"2026-01-22","duration":"06:36","url":"/play/19139689.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYzM1ZDdlOThlNjYyYWQ0NmNlYTg0NmYxMGVmZjZhMzcuanBn.cache","vod_id":18937207,"title":"MDB-902 - Gạ gẫm và quan hệ tình dục với khách hàng ở Ikebukuro, Shinjuku và Nakano.","lastmod":"2025-03-22","duration":"02:51:06","url":"/play/18937207.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYzdjNWI4OTliZTg5ZDUxNmFjN2I4NzZlYWE2NTRjNmEuanBn.cache","vod_id":18924651,"title":"Một cô gái đeo mặt nạ đắp mặt nạ dưa chuột rồi dùng dưa chuột để tự thỏa mãn, xoa bóp vùng kín cho đến khi nó trở nên ướt át, hồng hào và quyến rũ. Cảnh tượng rất hấp dẫn; đừng bỏ lỡ nếu bạn thích.","lastmod":"2025-12-14","duration":"00:56:06","url":"/play/18924651.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvOTE5YWUwNjkzMzIzN2U5ODFmN2UyYThiMDM1YzhhNTEuanBn.cache","vod_id":18923745,"title":"Một nữ streamer xinh đẹp, trưởng thành với vẻ ngoài quyến rũ ngồi trên ghế, sử dụng máy rung và máy tình dục trong khi tự thỏa mãn một cách say đắm – một hành động thực sự dâm dục.","lastmod":"2025-12-14","duration":"01:11:53","url":"/play/18923745.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvMjhjOGZlNjRjNTllMWRiYzliMDQwNDBlZDc5NjJjNWQuanBn.cache","vod_id":19164393,"title":"Lối chơi PeasantsQuest 87 Một người vợ trưởng thành đang mang thai thích một dương vật to để lấp đầy cô ấy.","lastmod":"2026-07-11","duration":"05:47","url":"/play/19164393.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvOGI3OGNiNWYwODdmYjU2NTRlZjczMGY3MTZiMmE4OGMuanBn.cache","vod_id":18979769,"title":"CLUB-639: Một ống kính camera giấu kín ghi lại hình ảnh một cô gái tóc ngắn, ngực đầy đặn, người bất ngờ thân thiện với tôi, một thành viên ủy ban thư viện u ám. Tôi sẽ tiếp tục làm tình với cô trong lớp.","lastmod":"2025-03-23","duration":"01:57:34","url":"/play/18979769.html"}]},
videoTitle: 'Vợ tôi đang mang thai, và tôi bị cấm thủ dâm, nên tôi tiếp tục quan hệ tình dục với mẹ vợ, Suzuka, người đã đến Tokyo... Suzuka Ono, Rinka Ono, JUQ-801',
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=/`;
}
};
}