Selepas laporan perkahwinan pekerja lelaki baharu yang comel itu, rasa cemburu meletup! Bos wanita yang menyukainya menggunakan posisi menunggang untuk menembusi dirinya, membuatnya menyukai GAYA NO.1 S1","lastmod":"2026-07-11","duration":"02:14:41","url":"/play/19165089.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYjgwNDNhYzA5MWZmMDU2YjA5YjM0ZDFiNGRiNzJhYWUuanBn.cache","vod_id":18946142,"title":"Kehidupan lucah dan bahagia gadis telefon muda itu digambarkan dalam versi definisi tinggi dan bersari kata \"Hotline Girl,\" sebuah karya agung yang penuh ghairah. Gadis seperti ini sangat menyeronokkan untuk ditiduri tanpa perlu berkahwin.","lastmod":"2025-12-14","duration":"01:30:55","url":"/play/18946142.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNjYyMDQ4YmU0ODViYThiOTg2ZDE0Nzc3NTI2Y2JjMzkuanBn.cache","vod_id":18950650,"title":"Seorang wanita muda yang cantik dengan wajahnya yang terserlah, yang suka makan ayam dan daging naga berbisa, makan dengan penuh selera, dengan mahir memasukkannya dari pelbagai sudut.","lastmod":"2025-12-14","duration":"01:01:19","url":"/play/18950650.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMzRlOGY1MzBiYzllNzgzYjI0Y2ZhZDNhZTA3ODVhMjEuanBn.cache","vod_id":18972648,"title":"Teman wanita lelaki itu sangat lembut dan comel; dia hampir membuatnya menangis di atas katil. Dia terus menolak, menciumnya, memeluknya, dan juga ingin menghisap payudaranya. Dia lembut, comel, dan menawan.","lastmod":"2025-12-14","duration":"00:52:09","url":"/play/18972648.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvODY5NGM5MGFmNDJlNTk3OTlhMWQwMzcwZmZlNTVmYWUuanBn.cache","vod_id":18999472,"title":"Seorang wanita muda yang kecewa secara seksual terobsesi dengan zakar.","lastmod":"2025-03-23","duration":"01:02:25","url":"/play/18999472.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMjMxNzUyMGEzZTI5ZDBhYzJkZGZkMGY3Y2IzNzM4NTguanBn.cache","vod_id":19019986,"title":"Hasil carian Baidu menunjukkan seorang pramugari muda dan cantik melakukan hubungan seks dengan teman lelakinya di hadapan cermin semasa penggambaran, dan kemudian menggunakan alat permainan seks di atas katil sambil dia mengerang: \"Setubuhi saya kuat-kuat, setubuhi puki kecil saya yang nakal.\"","lastmod":"2025-03-24","duration":"05:10","url":"/play/19019986.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYmJlZmRmOTRlM2YyM2Y4NzRjOTBlYTk5YmY0MWMyZWEuanBn.cache","vod_id":18949025,"title":"Abang sulung itu secara paksa menanggalkan skirt pendek dua wanita muda, menanggalkan pakaian mereka, dan mengusap kemaluan dan payudara mereka. Dia kemudian menggunakan penggetar untuk melakukan seks oral mereka dengan zakarnya yang besar, bergilir-gilir meniduri mereka di atas dan di luar katil sehingga mereka mengerang dan mengerang tanpa henti.","lastmod":"2025-12-14","duration":"01:20:49","url":"/play/18949025.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZWU4NmQzYWIyYmUzOGU0YjllNzVhOTQ1NTQ0Yjc3YzkuanBn.cache","vod_id":19025018,"title":"Festival Penghargaan Peminat SDEN047SOD Pertempuran Pelincir Seluruh Jepun 2019 dan Gusti dengan Lelaki dan Wanita Amatur di Tempat Mandi Campuran.","lastmod":"2025-03-24","duration":"01:58:42","url":"/play/19025018.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYjJiMGI0ZjBkODAyNGUzN2MxYTdiOWI5OGFlNDMxYjAuanBn.cache","vod_id":19015212,"title":"HND705: Bekas tunang seorang wanita secara curang menghubunginya; dia telah NTR dengan bekas teman lelakinya, yang sebenarnya abang kepada tunangnya; mereka melakukan hubungan seks sebelum perkahwinan mereka. Mari Takasugi.","lastmod":"2025-03-24","duration":"02:00:23","url":"/play/19015212.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTExMjQvM2EwZjI3MmZlZjJiYTlkMzAxZWFmOTFmMDg0YWJlMzUuanBn.cache","vod_id":19064283,"title":"Berkahwin selama 10 tahun, saya dan isteri pergi ke kedai kopi buat kali pertama... Ai Sayama MEYD-830","lastmod":"2025-12-14","duration":"01:58:28","url":"/play/19064283.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTExMDQvOWIxOWM3ZDY1YzEwYjA2MmExOTU0YTQ1YjliYjAxNzQuanBn.cache","vod_id":19061012,"title":"Naked Warrior Returns 6, dibintangi oleh Miu Arioka, Sakura Mita, Noah Nanami dan lain-lain. RCTD_622","lastmod":"2025-11-03","duration":"02:10:19","url":"/play/19061012.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMmIzZTM5ZTU2OTA4ODQ1NmYxN2MxN2JmZGExY2UwNmMuanBn.cache","vod_id":18975134,"title":"Seorang wanita muda yang cantik dan menawan dengan gaya Barat berlutut dan menerima dua zakar, diserang dari kedua-dua hujungnya, satu tolakan yang kuat dan kuat dari belakang, memancut ke perutnya.","lastmod":"2025-12-14","duration":"00:31:23","url":"/play/18975134.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNGY2ZmFhODEzOTYwMDMwMWYyMmY2YWY3MTBmNWNiYmUuanBn.cache","vod_id":18949062,"title":"Seorang wanita muda yang montok dan menggoda menghiburkan teman lelakinya pada lewat malam, mempamerkan pakaian dan stokingnya yang memikat untuk menggoda mereka. Dia melancap, bermain dengan timun, menggosok payudaranya, dan juga mencapai klimaks di dalam tandas, sambil mengeluarkan bunyi lucah.","lastmod":"2025-12-14","duration":"03:46:33","url":"/play/18949062.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZGYwMDU2ZGI0MmJkYmNhNzQxZDc5NDEyNTZjOWRiOWQuanBn.cache","vod_id":18958744,"title":"Seorang wanita muda yang sangat cantik menunjukkan wajahnya dan melayani seorang pemuda di sebuah hotel. Dia sangat mahir, menawarkan urutan payudara, seks oral, dan zakar yang besar. Dia duduk di atas pemuda itu, menggoyangkan pinggulnya, dan melakukan seks tanpa perlindungan, pelbagai bentuk hubungan seks yang sengit, dan ejakulasi dalaman.","lastmod":"2025-12-14","duration":"00:53:27","url":"/play/18958744.html"}]},
videoTitle: 'Hubungan seks dengan wanita muda yang baru berkahwin',
language: 'ms',
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('Pautan disalin!');
}).catch(() => {
// 降级到旧方法
document.execCommand('copy');
alert('Pautan disalin!');
});
} else {
// 降级到旧方法
document.execCommand('copy');
alert('Pautan disalin!');
}
}
},
// 切换布局
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=/`;
}
};
}