1Pondo 122725_001 Selamat datang ke tandas daging yang dipenuhi air mani bersama barisan pelanggan! Futaba Mio","lastmod":"2026-07-11","duration":"58:48","url":"/play/19153219.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZGQ0Yzc3YTFmNGI1YWVjOGNiNzNiYTExZGM5MzM0NWQuanBn.cache","vod_id":18950922,"title":"MIDV-216-C Seorang lelaki tua yang jantan terjatuh ke dalam cecair badan seorang perempuan jalang di dalam bilik sampah! (Idola Intaglio, ejakulasi, air mani, tandas)","lastmod":"2025-03-19","duration":"01:59:49","url":"/play/18950922.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvODk3ODFmZjM5MWI5OTVhNDM0ODUxMDUwYjBmMTg0MjcuanBn.cache","vod_id":19095939,"title":"Al (Bae Joo-hyun) - Sangat seksi, ditiduri dengan kejam...","lastmod":"2025-03-19","duration":"12:14","url":"/play/19095939.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvYmVkMjhjNWRhYjkzZDA0NDE4ZGJhMTcyZWI0OTNjOTYuanBn.cache","vod_id":19145626,"title":"NHDTB-86803 Belaian bersemuka membuatnya mencapai orgasme berulang kali; dia menjulitkan lidahnya dengan lidahnya dengan penuh nafsu sehingga basah. Seorang gadis dahaga 2, seorang wanita pejabat yang muram dengan stoking hitam.","lastmod":"2026-04-19","duration":"41:38","url":"/play/19145626.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNDA3ZTUyNjU3M2JjZmE3MzZkZWM5M2NkM2JkNDRiYzguanBn.cache","vod_id":19067091,"title":"EBWH-023-C ialah seorang otaku wanita yang pantas bercakap, yang, seperti rakan-rakan lelakinya, dilahirkan untuk aktiviti otakunya... tetapi dia mempunyai badan yang menawan, berbadan gempal, berbentuk H-cup dan sifat yang sangat lucah.","lastmod":"2025-03-19","duration":"02:29:39","url":"/play/19067091.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMTIyNzIzZmE3MDg3MTE3NTQzOGEzNTI2N2Y4MTMyMWMuanBn.cache","vod_id":19142056,"title":"REAL-958 Rogol Berkumpulan di Rumah Mandi Awam: Seorang pelajar kolej wanita yang menawan didera oleh seorang lelaki tua di rumah mandian tertutup yang beruap, lalu jatuh ke dalam kebejatan moral yang teruk, badannya dipenuhi air mani dan afrodisiak.","lastmod":"2026-03-16","duration":"02:02:34","url":"/play/19142056.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvOGU5NjliMzEwY2U4ZTczYmQ2NjkyMTBlNmYxM2MwMzUuanBn.cache","vod_id":19131052,"title":"DNJR-149 Seorang masokis mencipta penjara!? Seorang pengawal penjara yang lucah memaksa ejakulasi dan mengawal...","lastmod":"2026-02-13","duration":"01:57:17","url":"/play/19131052.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvOGI0MzIzZTZhYTRhNWZjNzliMWZhOWRkMzNlZjY1ZjQuanBn.cache","vod_id":19031460,"title":"Saya bersama seorang wanita muda yang menggoda. Belum pun saya menyentuhnya, dia sudah mula berahi di atas katil. Kakinya yang panjang dan langsing serta payudaranya yang berisi sangat mengujakan. Selepas dia menghisap saya, saya menidurinya di hadapan cermin. Dia tersipu-sipu melihat pantulan mindanya sendiri. Dia juga mahu saya masuk lebih dalam. Saya membawanya ke katil dan memberikannya satu lagi pusingan seks yang sengit.","lastmod":"2025-03-19","duration":"18:18","url":"/play/19031460.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMGFlM2U4OTc0ZjFjY2U0NTUzOThhMGE0NDU2OGYxNzkuanBn.cache","vod_id":18928362,"title":"WANZ-915-CN Ejakulasi pramatang yang mengelirukan diikuti dengan penembusan yang berpanjangan tanpa penarikan dan ejakulasi yang kuat!! Kanade Hanayone","lastmod":"2025-03-19","duration":"02:00:08","url":"/play/18928362.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNDkwZjcyZGVkZjI5MjVhMmRhNTgwYjA0MzA2N2U1MGUuanBn.cache","vod_id":19022582,"title":"Wanita muda yang sudah berkahwin, Nakamura Miu, dijadikan alat permainan seks.","lastmod":"2025-03-19","duration":"11:17","url":"/play/19022582.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvYTg2Y2EyYTgwOTIyOTNmNTUwMDdkZGNiNTk2MWRlMWMuanBn.cache","vod_id":18962999,"title":"FC2-3423200 [Tembakan Persendirian - Pancutan Mani] Isteri berusia 29 tahun dipaksa mendedahkan badannya kerana pembayaran kad kredit - Belum pernah terjadi sebelumnya","lastmod":"2025-03-19","duration":"32:01","url":"/play/18962999.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA2MDcvNjNkYTNhNzJkMTFjYWJiMGNmY2ZkMzNhODcwYjA5ZDIuanBn.cache","vod_id":19107655,"title":"MDBK-367 menawarkan perkhidmatan ejakulasi terbaik dari klinik penghantaran jururawat, menggunakan bisikan manis untuk membawa anda keseronokan berulang kali, mencairkan minda anda.","lastmod":"2025-06-07","duration":"02:30:28","url":"/play/19107655.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvYmZiMWZjNDA1YTY4MzI0NjYyNGFmZjc3YTU1ZDcwMjAuanBn.cache","vod_id":18965239,"title":"JUQ-448 Sebulan kemudian, saya telah menyimpan wang dan sperma yang cukup untuk pergi ke mandian buih mewah. Ibu asrama saya yang berpayu dara besar, menggiurkan, dan lucah membuatkan saya gila, dan air mani saya kering.","lastmod":"2025-03-19","duration":"01:58:28","url":"/play/18965239.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA3MjMvZDU1NjY2MjU5MmM0YTU0NTA3ZTljN2ZlZDQ1ZmUyZmYuanBn.cache","vod_id":19113546,"title":"Godaan kakak iparku yang menggiurkan, kedalaman duburnya yang tak terduga.","lastmod":"2025-07-23","duration":"10:44","url":"/play/19113546.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMDhhZTI5OWFlOWJhOTY2ODE2NTYyMjI2OTI4ODVkMjIuanBn.cache","vod_id":18989754,"title":"PPPE-185 \"Saya tidak pancut...!\" Seorang penyiasat yang menggoda, berpura-pura kuat, akhirnya mengejang, membasahi seluarnya, dan pancut beberapa kali, menjalani soal siasat dan menjadi sasaran beberapa serangan seperti omboh.","lastmod":"2025-03-19","duration":"02:00:27","url":"/play/18989754.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNTRlZjYyYzgzODZlNGRlNTY5N2EzODg2YWZkODk0ZWIuanBn.cache","vod_id":19004931,"title":"Media Imej Peach AV Cina PMX044 Fantasi Gadis Sebelah Lin Yutong","lastmod":"2025-03-19","duration":"15:35","url":"/play/19004931.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA0MTMvZjEzNmIzYjllYjQ4ODFmNmYyNzJjYzU5OWVkYzlkYzkuanBn.cache","vod_id":19100055,"title":"Akari Niimura - MIST-342 Bar Payudara Persendirian Kedai ini tiba-tiba tutup. Seorang gadis yang berada dalam masalah kewangan menghubungi saya dan ingin bertemu saya... tetapi tidak memberitahu kedai itu.","lastmod":"2025-04-13","duration":"02:35:59","url":"/play/19100055.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvOGYxNGQ4Yzk4YTA1MmJjOTJiYTg3NzZmNGE5MDI3ZmUuanBn.cache","vod_id":18965654,"title":"FC2-3473964 *Masa terhad 3 hari 2780pt → 780pt [Pendedahan muka penuh] [3P·Pancaran mani] Ibu bapa membayar hutang","lastmod":"2025-03-19","duration":"53:27","url":"/play/18965654.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvOWY5M2I4MTE2MGMzYTBiYzQyODM0YTFkYmZlMTg2NDMuanBn.cache","vod_id":18941871,"title":"YUJ-003 Tiga hari saya tidak dapat memberitahu suami saya. Saya tidak mempunyai kehidupan seks dan sangat kecewa, jadi saya membiarkan anak saudara saya memancutkan air mani di dalam badan saya.","lastmod":"2025-03-19","duration":"01:56:39","url":"/play/18941871.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNjNhM2RiOGJlZWJkNDNjMTE2N2ZhMzIyYzVlZDVkOTQuanBn.cache","vod_id":18950835,"title":"Gadis pengiring mewah datang dengan stoking jala ikan yang seksi. Adakah menyentuh puting anda seperti ini terasa menyenangkan? Gadis itu malu-malu, melutut dan menghisap zakar yang panjang. Dia tidak tahan lagi.","lastmod":"2025-03-19","duration":"38:33","url":"/play/18950835.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvOTBjYjk0MDE3NjRhMTBmMjMxNmE1YWJjZDJjNjEzYTAuanBn.cache","vod_id":19056760,"title":"Filem No. 128 arahan DORI-128 Paco menampilkan seorang gadis bertudung sumringah yang memperoleh wang saku melalui pelacuran dan pergi dalam perjalanan graduasi bersama rakan-rakannya.","lastmod":"2025-03-19","duration":"01:25:40","url":"/play/19056760.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZDMzOGZmOTc0M2Q4NDBjOWE2ZGI5ZjBkNjYzMzRjNjAuanBn.cache","vod_id":18991445,"title":"DSVR-01145 [VR] Seorang gadis yang berkelakuan baik dan elegan di khalayak ramai, tetapi di rumah dia adalah anak perempuan seorang bapa yang tegas yang sentiasa ingin memeluknya - CD3","lastmod":"2025-03-19","duration":"18:00","url":"/play/18991445.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMmVmNTNmNzM4Yzg3NmE3NzE5NTU1Mzg2NDQwMmI5ZjYuanBn.cache","vod_id":19140606,"title":"Li Yitong ialah seorang pelakon wanita peringkat kedua di tanah besar China. (Li Yitong beruniform)","lastmod":"2026-03-03","duration":"07:08","url":"/play/19140606.html"}]},
videoTitle: 'JUN-134 Seorang gadis yang anggun dan seksi berpakaian seragam begitu lucah sehingga dia akan menikmati kehidupan seks selepas sekolah yang liar!',
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=/`;
}
};
}