Bạn của vợ đột nhiên muốn mua Yuri Sasahara ALDN-400-C chính hãng","lastmod":"2026-07-11","duration":"01:57:16","url":"/play/19164682.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZGY5MzljOGE5YjcwMmVmODY3NTdhMTU4YzVjMTBiYTcuanBn.cache","vod_id":19001863,"title":"MEKO-108 [Bà định làm gì với tôi đây, sau khi chuốc say tôi?] Những chàng trai và cô gái trẻ tụ tập tại quán rượu này, nhưng sau khi thấy một bà cô uống rượu một mình, họ đã bị thuyết phục và thành công đưa về nhà! Thân thể khô khan, khao khát tình dục của người vợ mới cưới cô đơn bỗng trở nên ướt át!! TẬP 27","lastmod":"2025-03-23","duration":"02:04:09","url":"/play/19001863.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMzZlMjk5YTdmM2E0NDQyNDRjMTU5ODYzYTYzYjI2YzYuanBn.cache","vod_id":18986177,"title":"Người tình của vợ 2","lastmod":"2025-12-14","duration":"01:21:14","url":"/play/18986177.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA5MjYvNGY2ZGEwNDhkMDc5NmM1YTRkYTYxMWE3NTRiMmRlZjQuanBn.cache","vod_id":19054162,"title":"Vùng quê vào mùa hè ngột ngạt đến khó chịu... Một người vợ dâm đãng, bị quyến rũ bởi bộ ngực lớn, ướt át của mình, đã dâm dục nuốt chửng một trinh nữ. (JUNY142)","lastmod":"2025-09-25","duration":"02:55:42","url":"/play/19054162.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZjMzN2EyNDA5MjY1NGJlZGZlZmFjMzViODI4NTVmZGUuanBn.cache","vod_id":18989755,"title":"336KNB-095 Bộ sưu tập ảnh khiêu dâm của phụ nữ đã kết hôn trên toàn quốc. Tuyển dụng phụ nữ đã kết hôn trên toàn quốc cho các chuyến công tác. Quay phim góc nhìn thứ nhất và phát hành trực tuyến. Minako, 36 tuổi, đã kết hôn được 9 năm. Mặc dù sống hạnh phúc với chồng, cô vẫn không thỏa mãn và đầy ham muốn tình dục! Thân hình quyến rũ và gợi cảm của cô ấy không thể cưỡng lại, và cơ thể nhạy cảm của cô ấy tràn đầy sự ngọt ngào quyến rũ, mang đến trải nghiệm tuyệt vời nhất!","lastmod":"2025-12-14","duration":"01:09:36","url":"/play/18989755.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA5MDgvZGIyMjViYjBmNDRiMTZiNGNlM2I0YjMzZDZjODEzNzQuanBn.cache","vod_id":19051664,"title":"Người vợ yêu dấu cảm thấy ngực mình bị một người đàn ông khác chạm vào trong lúc nhà vua đang thi đấu, mà không hề hay biết rằng... (Phần còn lại của văn bản dường như không liên quan và có thể là những đoạn văn vô nghĩa do máy tính tạo ra.)","lastmod":"2025-09-07","duration":"03:58:54","url":"/play/19051664.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvYWI5ZDI5MTQwMjNjOGRjMTk4NzY2ZDYzZTRmOTI5ODQuanBn.cache","vod_id":19149209,"title":"\"Đàn ông cũng làm chuyện đó (thủ dâm)...phải không? Tôi muốn xem...\" Một người vợ trẻ chỉ có một con gái đã nhờ người bạn thân của mình, người có một con trai, xem cô ấy thủ dâm. (HUNTC-432)","lastmod":"2026-03-20","duration":"02:43:37","url":"/play/19149209.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMDdjNDQ5YzhhZjU2NTM1MjM1MWJiMTRhNTBkZTkyNGQuanBn.cache","vod_id":18988911,"title":"040220_01-10MU Cô gái tự nhiên 040220_01 Cô vợ trẻ tự nhiên muốn có tiền để mua quần áo và túi xách","lastmod":"2025-03-23","duration":"44:35","url":"/play/18988911.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly9pYy4xNTUyNTAyMTQudG9wLzIwMjYwMjE3L09mOXdjUkFlLzEuanBn.cache","vod_id":19144045,"title":"Cô giáo đã kết hôn ~ Quan hệ tình dục vô đạo đức sau giờ học với dương vật khổng lồ ~ Biết rõ điều đó là không tốt, nhưng vẫn đạt cực khoái nhờ dương vật to lớn của người bảo vệ mình... Nagase Asami NGOD-301","lastmod":"2026-02-18","duration":"02:18:10","url":"/play/19144045.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvM2Q1MTc5NjcxODJiZjE4NmJlZDgwZGEzZTJkMmZjMGYuanBn.cache","vod_id":18964177,"title":"BBAN-417 Bí mật của người vợ ngực khủng dâm đãng... Hai cô gái đồng tính ngực khủng Seiri và Yuria Yoshine chết đuối","lastmod":"2025-03-22","duration":"02:34:10","url":"/play/18964177.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly9pYy4xNTUyNTAyMTQudG9wLzIwMjYwMjE3LzlpNTJmZzJ6LzEuanBn.cache","vod_id":19144043,"title":"Chương 3 của Bức ảnh đầu tiên về vợ tôi ở tuổi sáu mươi: Sato Miyumi JURA-164","lastmod":"2026-02-18","duration":"02:16:18","url":"/play/19144043.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvN2JkOTZiZTk4Y2RjZTc1MDYxNDA1OWRlMjQyN2M1YzIuanBn.cache","vod_id":18982173,"title":"328HMDNV-581 Một người vợ xinh đẹp 35 tuổi với vòng ngực cỡ G được bôi dầu khắp người trong phòng khách sạn và đạt cực khoái nhiều lần nhờ một video sex được quay từ góc nhìn người thứ nhất bởi một chàng trai trẻ hơn cô một tuổi.","lastmod":"2025-12-14","duration":"01:38:53","url":"/play/18982173.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZjRhYTA0ODk4MzdkYzdhZGQwZTkyOGYzOWNmODQ4OTUuanBn.cache","vod_id":19146922,"title":"Gặp gỡ NTR trong lúc giao hàng: Cô dâu mới Yuna Ogura bị tấn công trong xe khi đang đi cùng tài xế giàu kinh nghiệm, đã có gia đình, trong một chuyến giao hàng. START-471","lastmod":"2026-03-07","duration":"02:04:30","url":"/play/19146922.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA0MjkvMmQzNzU0NWMwMWI1NDQ4MjEyYzI1MDI1NTVjODI1MzkuanBn.cache","vod_id":19031332,"title":"Vợ của anh… chỉ một đêm thôi, tôi có thể mượn cô ấy được không? Ayaka Natsume ADN-428-C","lastmod":"2025-04-29","duration":"01:59:57","url":"/play/19031332.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMzJhZmVjOTY5MzI3NDZjYjEzNmNjMDA4NWQxZWUxMjcuanBn.cache","vod_id":18988562,"title":"GDHH-176 \"Anh sẽ không buông em ra cho đến khi anh xuất tinh vào trong em!\" Chỉ vào ngày rụng trứng! Khao khát có thai! Cuộc tấn công không ngừng nghỉ của người vợ trẻ vào tường! Cú đấm mạnh mẽ của cô ấy xuống sàn! Chuyển động như pít-tông của quá trình thụ tinh!!","lastmod":"2025-12-14","duration":"02:36:00","url":"/play/18988562.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMDQ1MDhlMmUwN2Y1MWJhMWEwNjI5ZTUyZmRjZjYwZjguanBn.cache","vod_id":19139819,"title":"C-2929 Xin hãy ngủ với vợ tôi Y Kaor Diễn viên không rõ danh tính C-2929 Xin hãy ngủ với vợ tôi Y Kaoru 126","lastmod":"2026-01-23","duration":"02:30:36","url":"/play/19139819.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA3MzEvMmMyY2JlZTBkNjcwZDZiNGVkZmI0ZWQyMWJiNzA2MTQuanBn.cache","vod_id":19044954,"title":"NACR941 Đang chờ người giao hàng yêu thích của bạn đến, hãy cởi quần ra để chào đón anh ấy! Một người vợ dâm đãng phô bày vùng kín để quyến rũ anh ta.","lastmod":"2025-07-30","duration":"02:08:29","url":"/play/19044954.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvYjgyYjRhNDQ4MTRhMjRkYTkwZWU3MzQ3ZWExNDhlZWQuanBn.cache","vod_id":19138119,"title":"\"Luôn luôn quan hệ tình dục với Yano Aima\" Liên tục thâm nhập từ sáng đến tối, dương vật khổng lồ không ngừng được đưa vào ngay lập tức để quan hệ. Yano Aima START-341","lastmod":"2026-01-13","duration":"02:19:29","url":"/play/19138119.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNWU0NzJkNzcxMDA4NzMyMDA1MWU1MDYzMGVmMTYyZmMuanBn.cache","vod_id":19012489,"title":"YSN497 Vợ tôi là một con điếm dâm đãng, đời sống tình dục không bao giờ kết thúc và không bao giờ có thời gian để cho dịch tuyến tiền liệt của cô ấy khô ráo. Kanna Shinozaki (loạn luân).","lastmod":"2025-03-24","duration":"01:38:42","url":"/play/19012489.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZjE0ODZiYjkzOTk0N2FkNmQ4OTVjZGQ2NWYyZTM2ZWIuanBn.cache","vod_id":19142785,"title":"Bị kích động đến điên cuồng bởi khoái cảm từ màn quan hệ tình dục bằng miệng kiểu 69 của bố vợ, anh ta không thể kìm lòng mà uốn éo hông và ngậm lấy người vợ xinh đẹp của mình vào miệng. (NHDTC-113)","lastmod":"2026-02-11","duration":"02:17:24","url":"/play/19142785.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA4MDQvMzQyODIzMGQ5M2JlN2U1ZDVkOTdjMDU3ZGYwNDFkZDcuanBn.cache","vod_id":19045276,"title":"MILF077 Những bà vợ trẻ khao khát chồng đến mức họ điên cuồng dùng đồ chơi tình dục để thủ dâm. Hãy dùng tôi làm vật dụng thủ dâm đi!","lastmod":"2025-08-03","duration":"03:07:20","url":"/play/19045276.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYzVlZWRiZDBmOTI3MzYwOWFkMjFmZmIxMWEyMDljMmUuanBn.cache","vod_id":19019305,"title":"Người chồng đã lừa dối vợ bằng cách bắt cô ấy tắm chung với nam và nữ!","lastmod":"2025-03-24","duration":"02:17:10","url":"/play/19019305.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA0MjgvNWE0Yzk4ZDVjZjczOTA0NTFjNGY5YjNhZjljMTZiZmQuanBn.cache","vod_id":19031188,"title":"Truyện NTR ngược trong tuần trăng mật: Đêm tân hôn của một cặp vợ chồng mới cưới tại khách sạn với một cô gái massage lăng nhăng, nhằm che giấu chuyện ngoại tình với vợ mình. (Wakamiya Hazuki EBOD-766-C)","lastmod":"2025-04-28","duration":"02:31:40","url":"/play/19031188.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZWZhMzc5YWQ2ZjAwNDhlOTY1MmE5MmNiZWY3Mjc5MWQuanBn.cache","vod_id":19137462,"title":"Phim Nhật Bản Hiếp Dâm 24: Người vợ phát điên vì cưỡng hiếp chồng mình - Machi Ikuno NSFS-404","lastmod":"2026-01-09","duration":"01:55:08","url":"/play/19137462.html"}]},
videoTitle: 'Sau khi để người vợ bị kìm nén về tình dục ở một mình với cấp dưới có dương vật khổng lồ của mình (20) PARATHD-4297',
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=/`;
}
};
}