Cô gái trẻ ngực khủng hẹn hò với cô gái trẻ ngực khủng tại khách sạn","lastmod":"2026-07-11","duration":"17:48","url":"/play/19166680.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA1MjQvNjQ2ZTU2OGY1ODlkZjkxZWM0NjA3NGFkZTcyYWFkZDkuanBn.cache","vod_id":19034995,"title":"FPRE049 Cô gái thân thiện và đáng yêu này đến từ câu lạc bộ bóng bàn là một cô gái có thân hình đầy đặn và nhiều lông, cô ấy muốn quan hệ tình dục sau giờ học.","lastmod":"2025-05-24","duration":"02:33:29","url":"/play/19034995.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMTMvYjM5ZjNkZGRkOTFkMGEzZjdmYzkzZjY0NjZkMjgxODMuanBn.cache","vod_id":19066977,"title":"Tôi đang bán người vợ ngoại tình của mình. Giam giữ tại khách sạn 24 giờ [quan hệ tình dục bằng miệng ngay lập tức, thâm nhập ngay lập tức, xuất tinh ngay lập tức]. Mời sử dụng thoải mái. Diễn viên không rõ danh tính PPPE_262","lastmod":"2025-12-14","duration":"01:59:38","url":"/play/19066977.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZGFjOWEyNGRhYzM1OTg5ZDEwMWQwMWUxY2RjMzU3MzIuanBn.cache","vod_id":18930221,"title":"Paco021110_029 Anna Sakura, một phụ nữ trưởng thành, thích ăn thịt và thích quan hệ tình dục bằng miệng.","lastmod":"2025-12-14","duration":"00:53:39","url":"/play/18930221.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA0MDUvNzI4OGNiZTM1MzdjMzM0ZWFjOGQxYzE3NTE2ZmNiOTMuanBn.cache","vod_id":19027758,"title":"Tôi đã xuất tinh nhiều lần vào bên trong người sếp nữ ngực khủng của tôi, Kiritani Mari, trong một chuyến công tác, bằng tư thế cưỡi ngựa. Kiritani Mari MEYD-630-C.","lastmod":"2025-04-05","duration":"01:57:07","url":"/play/19027758.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvZDc4NmE3ZGE3OGM0YWY4MWVhZTAyMGEzODJjZjg0NGUuanBn.cache","vod_id":19159203,"title":"Trải nghiệm đầu tiên cực kỳ xấu hổ của tôi với máy khoan bê tông trần truồng - bộ phận sinh dục của tôi bị lộ ra! Hậu môn của tôi cũng hoàn toàn lộ rõ! Cần gạt máy mát xa điện Primo","lastmod":"2026-05-21","duration":"03:57:25","url":"/play/19159203.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA5MTcvODU1NGExMjg0YjhkNmQzMzQ2ZTJkYTczZDE2YmUxZTEuanBn.cache","vod_id":19052989,"title":"MADV568 [4K] Sếp tôi là một phụ nữ xinh đẹp, quyến rũ, thuộc tầng lớp thượng lưu, nổi tiếng với việc tuyển dụng nhân viên mới để cung cấp dịch vụ tình dục trong công việc mới của cô ấy... Cô ta là một gái điếm mặc bộ đồ bó sát toàn thân trong suốt.","lastmod":"2025-09-16","duration":"01:58:43","url":"/play/19052989.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvY2Q1NTQxMTczOTMxOGY2YmI2YzE0MWNhM2VkZjBlMzIuanBn.cache","vod_id":18975329,"title":"Vụ việc liên quan đến nhân viên của Southern Power Grid: Một nữ nhân viên có thân hình đầy đặn, quyến rũ của doanh nghiệp nhà nước bị cáo buộc bị quay video khiếm nhã trong quá trình \"huấn luyện\" bởi sếp của mình để được thăng chức. Một người phụ nữ thực sự kỳ lạ và trái ngược!","lastmod":"2025-12-14","duration":"00:23:08","url":"/play/18975329.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYWMzMzY3ZGI2ZmQ3YmJmZDYzYmY0N2EzNDJiMmQzNWEuanBn.cache","vod_id":19024731,"title":"MIFD241C Sau khi cô gái mới cởi bỏ quần áo, cô ấy sở hữu vòng eo hoàn hảo và vòng ngực cỡ G. Cô trợ lý nha khoa lai Nhật Bản dễ thương với vòng ngực lớn ra mắt phim người lớn.","lastmod":"2025-03-24","duration":"02:26:12","url":"/play/19024731.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvOGU2NmNkYmZiZjdhNDYyYmM3NzQ2N2VjZWE0NmMzNmQuanBn.cache","vod_id":18934202,"title":"[Phụ đề tiếng Trung] DOCP-214 \"Tôi đây, xin hãy tha thứ cho tôi!!\" Một cô hầu gái xinh đẹp được giao nhiệm vụ giúp việc nhà đã bị hắn ta xâm hại ngay khi vừa về đến nhà!! Hắn ta liên tục thúc mạnh vào cô ấy...","lastmod":"2025-12-14","duration":"03:59:21","url":"/play/18934202.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTExMDMvNTJlMGU0MWJmMGIyYTE3YzdiN2YzYzZjNzM0ZDY2YjUuanBn.cache","vod_id":19060943,"title":"Lần đầu tiên một bác sĩ quấy rối trong quá trình khám sức khỏe _ Rei Kamiki (24), một nữ nhân viên văn phòng, mặc dù là một kẻ biến thái START_193","lastmod":"2025-11-02","duration":"02:13:47","url":"/play/19060943.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZmM5MmViZDY2Yzg1OTZjOTU2YzJiZDBjMDAyN2NiYjMuanBn.cache","vod_id":19154017,"title":"Một bên mặt cô vùi vào bộ ngực đồ sộ không tay áo, trong khi bên còn lại liên tục bị liếm núm vú. Các nữ diễn viên tham gia bao gồm Umi Oikawa, Nene Tanaka và Minaho Ariga.","lastmod":"2026-04-18","duration":"01:45:52","url":"/play/19154017.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvOTdmOWFjYzU0NTNhNGQxNjkyNTJmMWEyZWVmMDcwMjIuanBn.cache","vod_id":19137152,"title":"Chăm sóc sức khỏe vòng một lớn với áo ngực cỡ J-Cup Minori Ozaki ONSG-095","lastmod":"2026-01-07","duration":"02:09:13","url":"/play/19137152.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYWE3MTkzZDJmZGU3MGY1MmNhN2IwOGM0MzI4NzZjNWIuanBn.cache","vod_id":19005586,"title":"Sau khi bị 100 công ty từ chối, hy vọng cuối cùng của MIFD-256-C là trở thành diễn viên phim người lớn!! Nếu không thể trở thành diễn viên phim người lớn, tôi sẽ phải quay về nước.","lastmod":"2025-03-24","duration":"02:29:16","url":"/play/19005586.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly8xNTI2MDMwOXAudG9wLzIwMjYwMzE1L1FiMk9GYTJJLzEuanBn.cache","vod_id":19148648,"title":"Trong một chuyến về thăm quê nhà, tôi và mối tình đầu đã trải nghiệm \"lần đầu quan hệ tình dục\". Chúng tôi ướt đẫm mồ hôi, đạt cực khoái trong nhau hết lần này đến lần khác... Đó là một chiếc DASS-859.","lastmod":"2026-03-16","duration":"01:59:42","url":"/play/19148648.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvOWZhNWM3YjBkZjQzNTZiZjQ2ZDk2YjQ4MjRjMjYzOGUuanBn.cache","vod_id":19019712,"title":"JAC012 Thân hình hoàn hảo × Xuất tinh không kiểm soát!! Thân hình hoang dã và tuyệt vời, vòng một cỡ H quyến rũ!!","lastmod":"2025-03-24","duration":"01:29:52","url":"/play/19019712.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYTE4NDZlY2UwZmFjZmNjMjZmOGM5NmY3NTZlM2Q3ZjguanBn.cache","vod_id":18982456,"title":"FOCS-129 Một cô gái mới vui vẻ theo bạn trai đến Tokyo, nhưng sớm gặp phải những trở ngại... Mặc dù thất vọng, cô vẫn hoàn thành màn ra mắt phim người lớn của mình - Creamy Pie AV - với nụ cười ngọt ngào tự nhiên và vẻ quyến rũ ngây thơ.","lastmod":"2025-12-14","duration":"02:07:58","url":"/play/18982456.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZjE2OTY0ZTZjNzBkYWY4ZjEyMWI4OGY4YTgyNTA4YWQuanBn.cache","vod_id":18967214,"title":"[Không kiểm duyệt và đã bẻ khóa] IPX-005 Khách quen cực kỳ đông! Quán bar được đồn đại là nơi bạn có thể quan hệ tình dục thật sự! Tận hưởng trọn vẹn vẻ đẹp của cô nàng ngực khủng! Kana Momogi","lastmod":"2025-03-22","duration":"01:58:35","url":"/play/18967214.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvN2IwY2I0MGYzMDhjMDA5ZDgwMzRhNDdlNDgwZjgyMzcuanBn.cache","vod_id":18975317,"title":"529STCV-224 [Da trắng × Ngực khủng × Ngoại hình quyến rũ] Một thân hình gợi cảm hoàn hảo, đủ để chinh phục trái tim bất kỳ người đàn ông nào, khiến bạn muốn nhiều hơn nữa! Ngực khủng và những màn quan hệ mãnh liệt sẽ đưa bạn đắm chìm trong trải nghiệm, dẫn đến nhiều cực khoái.","lastmod":"2025-12-14","duration":"01:19:54","url":"/play/18975317.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZjQzZmM5MDk1YmNjZDIwNjM3ODhiNWQ0NGUwZGMyNTUuanBn.cache","vod_id":18971344,"title":"VENU-706 Mồ Hôi Loạn Luân \"Một thân thể rực lửa, một tử cung ướt át, một bản năng cha con không thể kiểm soát\" - Shiori Tsukada","lastmod":"2025-12-14","duration":"01:33:38","url":"/play/18971344.html"}]},
videoTitle: '498DDH-149 [Ngực khủng và eo thon! Miệng rộng, cực giỏi chuyện ấy! Một thân hình sinh ra để làm tình lần đầu tiên]',
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=/`;
}
};
}