Một người yêu mà bạn gặp sau khi chỉ quen biết nhau ba ngày, vào cái ngày bạn gặp nhau sau khi lỡ chuyến tàu cuối cùng vào đêm khuya. Nhưng tất cả đã kết thúc đột ngột. (Phần văn bản còn lại dường như không liên quan và có thể được tạo ra bằng máy, và đã được lược bỏ khỏi bản dịch.)
Lần đầu tiên quan hệ tình dục bằng miệng mạnh mẽ. Vệ sinh cổ họng và vẻ đẹp ở giữa. Đột nhiên vượt giới hạn SP Sakuma Tsuna Sakuma Tsuna MOODYZ","lastmod":"2026-07-11","duration":"","url":"/play/19207060.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMGM1YzMxZjdjNjA1OTg4YzM5ZmU5ZTIxNjgxYTg4ZDIuanBn.cache","vod_id":19088667,"title":"Phim AV Trung Quốc Jelly Media: Người tình của mẹ kế tôi, Nie Xiaoqian","lastmod":"2025-03-26","duration":"0:29:41","url":"/play/19088667.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvYjJjMjUwMzIwYzg3ODFiMDA2N2Y1NjE5ZTUwMGI4MzkuanBn.cache","vod_id":19066995,"title":"Bốn cô gái xinh đẹp và hai chàng trai trong bộ đồ lót gợi cảm tham gia vào một hành động khêu gợi tình dục, liếm láp và cưỡi lên mông gợi cảm của nhau. Đừng bỏ lỡ nếu bạn thích thể loại này!","lastmod":"2025-03-26","duration":"3:11:10","url":"/play/19066995.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZWJlNjM2YWZlMzYzZmMyMzJiZjdjNDgyNTc0MWU4YmYuanBn.cache","vod_id":19096523,"title":"5. Một nhân viên nam làm thêm giờ muộn vào ban đêm bị tình nhân của CEO trêu chọc và bị cương dương. Anh ta phải xuất tinh 10 lần trước khi bị sa thải!","lastmod":"2025-03-26","duration":"2:05:18","url":"/play/19096523.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNzM0ZmE5YmE3NjdjYWQwMzZhMmRkMjRmNzNlYzJjMjUuanBn.cache","vod_id":19106754,"title":"Tôi muốn có con với anh…anh có thể cho tôi một đứa con không? (Sự không chung thủy của một người phụ nữ đã kết hôn)","lastmod":"2025-03-26","duration":"1:55:21","url":"/play/19106754.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvOWM2NzUyOWMxNmU4NmY2ZmEzZWQ2MGQ2MTE4ODljNjAuanBn.cache","vod_id":19070426,"title":"200GANA2208 Cực kỳ nhẹ nhàng, lần đầu tiên quay phim. 1424 Cô ấy quen một người đàn ông, trở thành bạn với anh ta, rồi trở thành bạn tình (người ngủ cùng) → Chưa hết, cô ấy hôn anh ta, sờ ngực anh ta, và anh chàng này cực kỳ phấn khích trước kỹ năng của anh ta nên đã cho phép anh ta quan hệ tình dục với mình. Khi cô ấy đạt cực khoái hết lần này đến lần khác, cơ thể cô ấy co giật và nảy lên vì những cú thúc mạnh!","lastmod":"2025-03-26","duration":"1:14:03","url":"/play/19070426.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvOTNkYzljNzJkNzczYTY5OGRmMGUzYWQ0MTBjYjkyMzYuanBn.cache","vod_id":19170544,"title":"Phim \"Con Đường Quỷ Dữ\" của Pickman, \"Tiệc Sữa Nửa Đêm\" (có phụ đề tiếng Trung)","lastmod":"2025-12-28","duration":"0:29:29","url":"/play/19170544.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvY2YyM2ZlZTVmNWU5Y2Q5YjdlZDlmZDRmNmJhMmVlYWUuanBn.cache","vod_id":19114414,"title":"Cô ấy đang chuẩn bị chụp ảnh, nhưng nam diễn viên đột nhiên xâm hại cô và bắt đầu chơi đùa một cách cuồng nhiệt với cô!","lastmod":"2025-03-26","duration":"0:24:52","url":"/play/19114414.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZmMyODNhOWUzYWEwZDFjOTZhZDc2NTA1YjNjNTFlMmIuanBn.cache","vod_id":19039101,"title":"[Bánh trái cây] Hơn cả bạn bè, nhưng chưa phải người yêu 1","lastmod":"2025-03-26","duration":"0:14:14","url":"/play/19039101.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZGQ0ZTI5MWViZGE3ZjAxZGYzYThjZTFkM2QxNTY0OWYuanBn.cache","vod_id":19067641,"title":"Một cô gái trẻ xinh đẹp trong chiếc quần tất đen để lộ khuôn mặt và phô diễn kỹ năng \"vùng kín\" tuyệt vời của mình, có khả năng làm phồng bao cao su bằng đôi đùi trần. Âm đạo hình bướm của cô ấy làm phồng bao cao su một cách rõ rệt. Đừng bỏ lỡ màn trình diễn ngoạn mục này!","lastmod":"2025-03-26","duration":"0:24:59","url":"/play/19067641.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvYzgzZmExZGZmY2Y5NmFhNzZkMGIxZjM0MjdhZDYwZGQuanBn.cache","vod_id":19069146,"title":"Dịch vụ massage nắn chỉnh xương cao cấp của Rain: Lần đầu tiên chúng tôi trải nghiệm (Phần 1)","lastmod":"2025-03-26","duration":"0:11:57","url":"/play/19069146.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNzk5ZjZmZTBiYjdhOWM5MjVmODc4NDY0NGE5Y2Q5YTMuanBn.cache","vod_id":19127170,"title":"Thân thể quyến rũ tột đỉnh và cuộc tình vụng trộm của người yêu, hai giờ trước chuyến tàu cuối cùng.","lastmod":"2025-03-26","duration":"2:09:38","url":"/play/19127170.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZTNmNWFhNjY0MTMyY2RlMDFiMDRjYzI1YmYxYTllYjIuanBn.cache","vod_id":19128215,"title":"M-man và Washio Mei bị bỏ rơi hoàn toàn trong một căn nhà biệt lập ở ngoại ô và bị người phụ nữ dâm đãng hành hạ suốt ba ngày. Washio Mei SSIS-466-C.","lastmod":"2025-03-26","duration":"2:25:15","url":"/play/19128215.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvZDNmNGM0YWYyYzZiMmIwYTA4ZjhkYjA4MmU1OWExODIuanBn.cache","vod_id":19198804,"title":"Cắm trại trao đổi vợ chồng ba ngày hai đêm 5 NSFS-232-C","lastmod":"2026-05-14","duration":"2:10:05","url":"/play/19198804.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTExMDgvMTUzNzBiMTA2MWRiYzI1ZDYyM2FkOTM3NGQ2NWFlZjEuanBn.cache","vod_id":19163082,"title":"Khi bạn gái tôi không có mặt, tôi đã ép cô em gái ngây thơ, ngực khủng của mình quan hệ tình dục mãnh liệt với tôi cho đến khi cô ấy yêu dương vật của tôi. Ba ngày đầy kỷ niệm. (Nitori Hina, Murasaki Yukari FPRE_103)","lastmod":"2025-11-07","duration":"2:26:01","url":"/play/19163082.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMGJmNGMzMWM4Njk4YmQ1YWQ3M2ExNzlkYzdmZmVjNGYuanBn.cache","vod_id":19079000,"title":"Vì bố mẹ tôi tái hôn, người chị dâu xinh đẹp của tôi đột nhiên xuất hiện trước mặt tôi, và vẻ quyến rũ của chị ấy khiến tôi bối rối đến mức bị cương cứng… - Hanayone Rei.","lastmod":"2025-03-26","duration":"1:59:22","url":"/play/19079000.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZDU2NzI5YjE5YzU4MTRhZWVlNDA1YjM1NGFlMTRjOTAuanBn.cache","vod_id":19122995,"title":"Nhóm người này đột nhiên biến thành phụ nữ, vì vậy họ quyết định sinh con.","lastmod":"2025-03-26","duration":"2:23:31","url":"/play/19122995.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvYjZiMDVmNmRmZjA1ODU2NWM2MWFkODI2NDA1YTVkMDAuanBn.cache","vod_id":19037799,"title":"Cô gái nóng bỏng đột nhiên cảm thấy mình sắp lên đỉnh. (Trích từ \"Bộ phim Gia đình Kỳ ảo\" Phần 11: Tập 7)","lastmod":"2025-03-26","duration":"0:33:54","url":"/play/19037799.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvYjFlNzAzNmM2NWZmNjA4M2MyYzMzYTcwMWE2NTg3MDguanBn.cache","vod_id":19128014,"title":"【Nếu không có chuyến xe buýt cuối thì đến nhà tôi ở nhé】Sau khi say xỉn và không thể kiềm chế được, tôi được một nữ nhân viên lớn tuổi đưa về nhà. Lời lẽ tục tĩu, quấy rối tình dục và xuất tinh. Jinguji Nao MIDV-125-C.","lastmod":"2025-03-26","duration":"1:40:24","url":"/play/19128014.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMmY4ZGJmMjBhMDU2YTNhMTQ5NWRlMDM5YWZiNDQxZjIuanBn.cache","vod_id":19083443,"title":"Khi tôi gọi điện đến dịch vụ chăm sóc bà mẹ cho con bú, một người phụ nữ đã kết hôn mà tôi quen biết đến nhà, và không nói một lời nào, bà ấy bắt đầu xoa ngực mình rồi... thôi thì, nói tóm lại là bà ấy có thai.","lastmod":"2025-03-26","duration":"4:09:16","url":"/play/19083443.html"}]},
videoTitle: 'Một người yêu mà bạn gặp sau khi chỉ quen biết nhau ba ngày, vào cái ngày bạn gặp nhau sau khi lỡ chuyến tàu cuối cùng vào đêm khuya. Nhưng tất cả đã kết thúc đột ngột. (Phần văn bản còn lại dường như không liên quan và có thể được tạo ra bằng máy, và đã được lược bỏ khỏi bản dịch.)',
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=/`;
}
};
}