\"Tôi không thể làm điều này giữa ban ngày, quá xấu hổ.\" Một người mẹ 50 tuổi không thể cưỡng lại việc quan hệ tình dục bằng miệng trong 4 giờ giữa ban ngày. Mellow Moon (メロウムーン)","lastmod":"2026-07-11","duration":"","url":"/play/19267790.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA2MzAvY2I2ZjUxNGFhZDhmM2NlNzQ5MzBkOGNlMDAwODYyMDMuanBn.cache","vod_id":19266162,"title":"Một người mẹ và con trai, không thể rời khỏi phòng sau khi xuất tinh 10 lần, chịu đựng sự giao hợp của nhau, dẫn đến xuất tinh điên cuồng. DASS-587-C","lastmod":"2026-06-29","duration":"2:31:00","url":"/play/19266162.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZDBjNGVhNGIxZTAwZjQ5YTU0YjRjZTgyYzJlNGE5ODUuanBn.cache","vod_id":19236270,"title":"Phản ứng nhạy cảm không thể cưỡng lại của cơ thể! Trải nghiệm tình dục với dụng cụ kích thích cực mạnh, đến mức ngay cả khi thâm nhập cũng không thể phát ra âm thanh - Momojiri Kaname Bud JUFE-471","lastmod":"2025-12-24","duration":"2:31:14","url":"/play/19236270.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA0MDIvYjZlODljYTUwN2FkYWQyYzBhZjliMjNjNzNmNzVlZmMuanBn.cache","vod_id":19194913,"title":"Nhưng anh ta bị nhốt trong cabin cua và không thể trốn thoát.","lastmod":"2025-04-02","duration":"0:00:05","url":"/play/19194913.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA2MTEvOTUwYjQ4ODYyYzk3NDBhMTgxNmFlMjg3MDdhNTgzZWUuanBn.cache","vod_id":19207260,"title":"Là một giáo viên chủ nhiệm, tôi không thể cưỡng lại sự cám dỗ từ các học sinh của mình, và cuối cùng đã quan hệ tình dục với cô ấy nhiều lần tại một khách sạn tình yêu sau giờ học...","lastmod":"2025-06-11","duration":"2:00:56","url":"/play/19207260.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMTFiNWY1MjZmZWYyNWExZDczZDg1Y2NhYTVmYmFmNWEuanBn.cache","vod_id":19118718,"title":"Không thể cưỡng lại được sự ve vãn liên tục và chưa từng có của người bạn thân của con trai mình...!","lastmod":"2025-03-29","duration":"2:28:52","url":"/play/19118718.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNDYwNmUxYmVmNmY4ZGJhY2Q0ZGUxOWJlZWE2ZDllNTAuanBn.cache","vod_id":19047870,"title":"Người phụ nữ, toàn thân đầy vết bầm tím và không thể phát ra tiếng động, bị ép đạt cực khoái, mất trí trong khoái cảm tê liệt của những cú thúc chậm rãi, sâu lắng, không thể chống cự lại việc bị xâm nhập. Ham muốn tình dục của một bé gái 11 tuổi bị kích thích bởi một dương vật sắp xuất tinh.","lastmod":"2025-03-29","duration":"3:46:46","url":"/play/19047870.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNjViZWNlMDgzOGU0YWEyNjEzMzU4OTYzOGZhODRjOGQuanBn.cache","vod_id":19086704,"title":"Tôi không thể cưỡng lại được sự quyến rũ trước màn giả vờ quan hệ tình dục bằng miệng của anh họ và đã nổi cơn thịnh nộ!","lastmod":"2025-03-29","duration":"2:29:30","url":"/play/19086704.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNWQ2MjNmOGM5ZDgzZjI3ODVkMmQyNjUwMjc5YmY1MWYuanBn.cache","vod_id":19036066,"title":"DOCP-345 Tôi không thể kiềm chế được sự phấn khích của mình khi ở trong trạng thái tuyệt đối tập trung.","lastmod":"2025-03-28","duration":"2:30:49","url":"/play/19036066.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZjVmYWI0ZGQyMWRmMDM3ZmNjZGVkY2FjMjdhODUzNDQuanBn.cache","vod_id":19240055,"title":"Một cuộc chiến kích thích âm vật giữa hai người bạn thân! Một máy mát xa điện hai bánh ☆ Một màn so tài bóp âm hộ giữa những người bạn! Không thể chịu đựng được sự kích thích âm vật chính xác, cô ấy đã xuất tinh... Diễn viên vô danh TOTTE-249","lastmod":"2026-01-17","duration":"1:09:50","url":"/play/19240055.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNmJjMTgyMDcxMjAwZjE4NjVmNjIwNjRmNWY2ODI0ZjEuanBn.cache","vod_id":19165294,"title":"[4K] Khi người vợ dâm đãng này nhìn thấy một người đàn ông, cô ta không thể kiềm chế được dục vọng của mình... Khi cô ta hỏi người đàn ông đến nhà mình, danh tính thực sự của người vợ xinh đẹp này, nổi tiếng trong khu phố vì cuộc hôn nhân hạnh phúc, đã được tiết lộ - Nakano Mako.","lastmod":"2025-03-30","duration":"2:23:21","url":"/play/19165294.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMjYwNzg2YzU1MDEzNjkwNGM1N2QxYWQ4MzExNzQ4ZGUuanBn.cache","vod_id":19041985,"title":"Khi tôi cởi quần áo của bạn gái đầu tiên... Tôi không thể tưởng tượng nổi cô ấy mặc đồ như thế nào, nhưng cô ấy mảnh mai với bộ ngực lớn và đẹp. Tôi đã rất phấn khích đến nỗi tôi đã quan hệ với cô ấy cho đến khi hoàn toàn kiệt sức về mặt tình dục. (Ayase Kokoro)","lastmod":"2025-03-28","duration":"2:03:24","url":"/play/19041985.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvOTYzM2ZjNWRkODNhYzcwM2UzNmU3NTUxZjZhYTQxMzAuanBn.cache","vod_id":19177277,"title":"OKAX500 thâm nhập vào hiện trường nơi một người phụ nữ đã kết hôn không thể trả nợ đã bị đem cầm cố! Đối mặt với một hệ thống tàn nhẫn, nơi những người phụ nữ xinh đẹp này được hưởng lợi dựa trên hoàn cảnh của họ… 4 giờ.","lastmod":"2025-03-30","duration":"3:57:54","url":"/play/19177277.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvYjQzYTMyOWE5ZDNkZjllZmMyNmM1MzZlMTgzODU3YTMuanBn.cache","vod_id":19256501,"title":"Bộ ngực đồ sộ của con gái riêng khiến tôi không thể chịu nổi... Một câu chuyện ấm áp về cuộc sống thường nhật bên con gái riêng trong những năm tháng hình thành nhân cách. (Hiyoko)","lastmod":"2026-05-01","duration":"3:14:04","url":"/play/19256501.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvM2Y2ODkwYjMzZmNmMzNjZDVmYTI3NzZjNzg2ODU1ZDIuanBn.cache","vod_id":19138659,"title":"2 [Số lượng có hạn] Tôi không thể tin là mình đang ngoại tình... Cám dỗ: Ngọn lửa đam mê không thể kiểm soát khi nghịch ngợm với đồ lót và ảnh của Okui Kaede!","lastmod":"2025-03-29","duration":"2:16:36","url":"/play/19138659.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvODA2ZjE2YTlmMDQwNzE5ZmQ4MTZlYzRlZTU4MDUwZjQuanBn.cache","vod_id":19239141,"title":"Sự Chuộc Tội Mới 18 ~Giữa Tội lỗi không thể kiểm soát và Niềm vui~ Mika Sumikawa, Mika Sumikawa NSFS-416","lastmod":"2026-01-11","duration":"1:52:37","url":"/play/19239141.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvNWQxMzllZmVhMTY1NWUzNTZjMjk0ZDM4ZmI0MWE2NDcuanBn.cache","vod_id":19239917,"title":"Chỉ dành cho tiếp viên hàng không xinh đẹp (đã kết hôn). Một màn massage khiêu dâm kiểu NTR (ngoại tình) trong đó nạn nhân bị chôn vùi trong bồn tắm cát và không thể cử động. Nữ diễn viên không rõ danh tính SGKI-059.","lastmod":"2026-01-16","duration":"3:12:18","url":"/play/19239917.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZTE5ZDA5YWY2YTc5NGZkY2ViNmRmZGY4MWQzMTkzOWEuanBn.cache","vod_id":19192197,"title":"SDJS027 \"Nữ nhân viên yếu đuối nhất hôm nay\" Phòng Quan hệ công chúng - Giữa năm đầu tiên gia nhập công ty. Yoshioka Asumi (26) có tính cách không thể từ chối bất cứ yêu cầu nào. Chỉ cần cô quỳ xuống van xin, dường như cô có thể quan hệ tình dục với anh ta. Bên dưới vẻ ngoài vô cùng dịu dàng và hào phóng là một người phụ nữ dâm đãng và khéo léo đến bất ngờ.","lastmod":"2025-03-30","duration":"2:03:58","url":"/play/19192197.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA1MTQvZTY1YTZiMGNjM2E4ZTlmMDIxMTE2YWYxYzE0YzVjZDkuanBn.cache","vod_id":19202900,"title":"583ERKR-1035 Toàn bộ cảnh quay bằng camera giấu kín về các cô gái massage không thể đặt lịch trước - Yuzuru Hiiragi","lastmod":"2025-05-14","duration":"","url":"/play/19202900.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMzFhNTZiZmE2MDZkMDk4N2U3ODk2YjVhZjg4ZDcwMGUuanBn.cache","vod_id":19075840,"title":"Tôi không thể cưỡng lại được việc ngắm nhìn bộ ngực cỡ J-cup ướt đẫm mồ hôi, trong suốt của chị dâu tôi giữa cái nóng oi bức của mùa hè...1","lastmod":"2025-03-29","duration":"2:28:38","url":"/play/19075840.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNjBkNjE4NWQ3YmM3MWU2MzRlMTMyOTc2MWMzN2FlZGQuanBn.cache","vod_id":19155109,"title":"Mizuki cứ hôn và vuốt ve nhũ hoa của tôi, và tôi dường như không thể thoát ra được.","lastmod":"2025-03-30","duration":"1:48:48","url":"/play/19155109.html"}]},
videoTitle: 'Tôi không thể nào quên đêm tôi đã trải qua cùng anh trai cùng cha khác mẹ của mình, Misaki Sugisaki!',
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=/`;
}
};
}