JUR-224-C Một người bạn từng khoe khoang, \"Tôi quan hệ tình dục với vợ tôi ba ngày một tuần,\" giờ thì anh ta đã quan hệ tình dục với tôi năm ngày một tuần, mỗi lần xuất tinh 3 hoặc 4 lần vào bên trong cô ấy, tổng cộng là 18 lần xuất tinh vào bên trong cô ấy.","lastmod":"2026-07-11","duration":"02:25:45","url":"/play/19129301.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNTA5OTk4ZTRkZmVmYTcyNWU4YTg5ZGUxYTI5MDI1Y2YuanBn.cache","vod_id":18994290,"title":"XVSR-678-C Cảnh xuất tinh riêng tư nguyên bản với Asami Nagase!","lastmod":"2025-03-19","duration":"02:12:23","url":"/play/18994290.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA4MjQvMTQ2NzhjYWY4YzJmMzVjMWUyMDMyY2JmYzg4YzFkMmUuanBn.cache","vod_id":19094828,"title":"MFYD-004: Một người phụ nữ đã kết hôn cực kỳ gợi cảm bị buộc phải kiêng quan hệ tình dục và đạt cực khoái liên tục trong ba cảnh quan hệ thâm nhập.","lastmod":"2025-08-23","duration":"01:55:36","url":"/play/19094828.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEwMTYvNjQ3NGVjYzdhNGJkYzMwOGFjZmM2M2FmNDI1YzM3ZmIuanBn.cache","vod_id":19101308,"title":"DJN-026 Một nữ cosplayer xinh đẹp, quyến rũ với vòng một cỡ I bị cưỡng hiếp, xâm hại tình dục và mang thai tại một khu nghỉ dưỡng sang trọng vào giữa mùa hè.","lastmod":"2025-10-15","duration":"02:02:04","url":"/play/19101308.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvOWIxM2I2NTM5Y2VkZjE3Njk0Yjc1YzVkYTVjMWM2MTQuanBn.cache","vod_id":19056971,"title":"ALOG-014 Namaman Blog... Quan hệ tình dục với một cô gái xinh đẹp mặc yukata: Xuất tinh nguyên thủy ngoài đời thực","lastmod":"2025-03-19","duration":"02:18:19","url":"/play/19056971.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA4MTcvOTc2Y2FhNTBkYjIwYmUzMjUxMDYzYmIwYjJhY2QzYmUuanBn.cache","vod_id":19093856,"title":"PPPE-120-C Chị gái của bạn gái tôi đã quyến rũ tôi bằng bộ ngực khủng và màn quan hệ tình dục. OK","lastmod":"2025-08-16","duration":"01:56:06","url":"/play/19093856.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNGViNzM3M2QyMDU5MDI5YTlkMTM0OWI2NzBkMDRlMmMuanBn.cache","vod_id":19046138,"title":"FC2-3164708 [Cá nhân] Một người phụ nữ đã kết hôn có ngực bắt đầu phát triển. Ngay cả khi vay tiền từ những kẻ cho vay nặng lãi ở nơi khác, cô ấy vẫn không thể trả nợ, vì vậy cô ấy dùng núm vú lớn, đầy sữa của mình để trả nợ.","lastmod":"2025-03-19","duration":"30:49","url":"/play/19046138.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMmVjZjVlMDg1OWVjZGNlNWY2ODJkMTk1NzU2NDhjMDguanBn.cache","vod_id":18990092,"title":"chinhbaby - Chúng tôi bắt đầu quan hệ tình dục ngay khi vừa gặp nhau, từ cầu thang lên đến giường, khoái cảm mãnh liệt đến nỗi tôi không thể ngừng thúc đẩy cho đến khi xuất tinh vào trong.","lastmod":"2025-03-19","duration":"12:05","url":"/play/18990092.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA3MTMvNzNlYTkxY2IwZTI1ZDgyNjRhOThlYmRmYjliNjAzYjIuanBn.cache","vod_id":19130011,"title":"NGOD-315 Người phụ nữ đã kết hôn và chàng trai trẻ có dương vật khổng lồ: Lần đầu quan hệ tình dục và mang thai - Những cuộc gặp gỡ bí mật và quan hệ tình dục không an toàn nhiều lần sau lưng chồng... Yoshizawa Yuki","lastmod":"2026-07-12","duration":"02:02:01","url":"/play/19130011.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMWQyZWRhMGMxNGFmMDg4YjQ0YWZjZDNlZjkyNTEzYmIuanBn.cache","vod_id":18980271,"title":"Một người vợ xinh đẹp, không thể làm hài lòng chồng ở nhà, đã đến quay video cảnh chồng xuất tinh vào bên trong cô ấy.","lastmod":"2025-03-19","duration":"18:33","url":"/play/18980271.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNTA1YmUyNWI3NmEzNjk1YzAyNjU0YmJjNGYxODY4MzAuanBn.cache","vod_id":18960380,"title":"Kiệt sức vì đam mê mãnh liệt, người đẫm mồ hôi.","lastmod":"2025-03-19","duration":"00:00:34","url":"/play/18960380.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZGNiNWMwZDIyMTU2MTQxYmVhOWRjYTBlMGE2NTVjMDQuanBn.cache","vod_id":19004530,"title":"JUQ-516 Cô ấy ngủ thiếp đi ngay khi được chú ý… Một phụ nữ đã kết hôn bị tấn công tình dục trong phòng khám. Người phụ nữ xinh đẹp, người đang bị điện giật, đã “ngủ” – một bác sĩ biến thái.","lastmod":"2025-03-19","duration":"02:02:34","url":"/play/19004530.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMzU3ZWMwODZmZjlkMTU5MDE2ODJjNzEyNzM0MzQxNmIuanBn.cache","vod_id":18974310,"title":"ALDN-210-C Sự xuất tinh của mẹ và con trai: Lần đầu tiên người mẹ bị con trai xuất tinh vào trong.","lastmod":"2025-03-19","duration":"01:48:25","url":"/play/18974310.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNjJhMzc5NzBkYTdkYjM0MTA0NzQxZmViZWU3YjQzNmMuanBn.cache","vod_id":19037510,"title":"476MLA-120 Một nữ sinh viên đại học xinh xắn và sành điệu bị xuất tinh lên mặt!!! Video sex của một trẻ vị thành niên, khao khát được công nhận, đã bị rò rỉ!!","lastmod":"2025-03-19","duration":"01:08:49","url":"/play/19037510.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNjI3MjliOTRjNjg0MWMyMjkzZTg4Y2EwY2M2Mzg1M2YuanBn.cache","vod_id":19020258,"title":"Yui Hatano - Một người vợ ngực khủng vẫn đi làm sau khi kết hôn, về nhà trong tình trạng say xỉn! Trong lúc cô bất tỉnh và không thể tự vệ bên cạnh chồng, bố chồng bất ngờ lẻn vào phòng cô vào ban đêm! Không chỉ dừng lại ở việc sờ soạng bộ ngực mềm mại của cô, ông ta còn xuất tinh vào bên trong cô nhiều lần ngay bên cạnh con trai mình!","lastmod":"2025-03-19","duration":"03:30:55","url":"/play/19020258.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvN2I3Y2JkODc5ZDQyOTMxMzNjYzlhMTNiMWY0ZWUyNGMuanBn.cache","vod_id":19053668,"title":"SHN-044 Một cô gái dâm đãng bị một người đàn ông đã có vợ xâm hại... Người vợ ghen tuông của cô chứng kiến cảnh ngoại tình ngược và ngấu nghiến âm đạo ướt át của vợ. Chuyên viên massage Manami","lastmod":"2025-03-19","duration":"01:21:43","url":"/play/19053668.html"}]},
videoTitle: 'HND-347 Màn xuất tinh bí mật nhân ngày sinh nhật của tôi và mẹ',
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=/`;
}
};
}