Seorang wanita muda berambut pendek yang polos dan cantik, memperlihatkan payudara dan vulvanya dengan cara yang menggoda, menggosok klitorisnya dengan jari-jarinya sambil duduk di kursi, bermasturbasi dengan mainan seks, mengerang saat ia menggerakkan penisnya masuk dan keluar. Sangat memikat.
Bocoran Foto Pribadi, Memamerkan Wajah adalah Cara Terbaik, Wanita Dewasa Berkacamata Tipis Kuning, Foto Pribadi Mely, Wajah dan Vagina Bersama, Ziwei Terbongkar, Pelecehan Seksual, Erangan, Kelas Atas","lastmod":"2026-07-11","duration":"","url":"/play/19267677.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZWQwMTEzN2VmZDZlODg0Zjg4NjJkOWNiYjdmYzAzMTMuanBn.cache","vod_id":19042729,"title":"JD126 Seorang gadis yang membuat hatiku berdebar; cinta paling murni di masa-masa kuliahku.","lastmod":"2025-03-28","duration":"0:35:39","url":"/play/19042729.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNDIzZGNkNzg0YjA2Zjc1MjVhYmE4NTk1OGE3YjQwN2MuanBn.cache","vod_id":19060835,"title":"Gadis super cantik dan manis ini bahkan lebih memikat setelah menanggalkan pakaiannya, membuatmu ingin bercinta dengannya dengan keras sampai perutmu sakit!","lastmod":"2025-03-29","duration":"0:36:37","url":"/play/19060835.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMWU2YjQ3YmQ0MTc3OTc3NDhkMzE1YjUxNjgxM2ZhNDAuanBn.cache","vod_id":19249254,"title":"Bokong besar kakak iparku yang kontras itu sangat menggoda, jadi aku memanfaatkan keadaannya yang mabuk dan menidurinya.","lastmod":"2026-03-16","duration":"0:24:41","url":"/play/19249254.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZGFlODI0ZWU0MWU4ODJmYmU5NTMwNDM1NzZhY2Y0MDguanBn.cache","vod_id":19074222,"title":"Saya sedang masturbasi dengan jendela mobil terbuka ketika seorang pria yang lewat menusuk alat kelamin saya.","lastmod":"2025-03-29","duration":"0:02:55","url":"/play/19074222.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvYTNkMzM4MzY0ZTY0NzIwMjY1Yjk0ZGFmNjQ2YTA1MTAuanBn.cache","vod_id":19162592,"title":"[Aktris Utama Seksi] Video seks pribadi terbaru yang bocor memperlihatkan dirinya berhubungan seks dengan penggemar, termasuk mengangkat kaki dan melakukan gerakan dorong, dengan wajahnya terlihat jelas.","lastmod":"2025-03-30","duration":"0:33:45","url":"/play/19162592.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA5MDgvOGJmYTI0ZTY5ZDRiOGU4NmQ1MjYyZjJjMTcxNjE5YTYuanBn.cache","vod_id":19221148,"title":"Aku seorang gadis dengan hasrat kuat untuk masturbasi! Setelah aku menemukan teman sekelasku mengambil foto selfie seksi sambil masturbasi, aku menjadi budaknya. (Azuki Azu BAGR053)","lastmod":"2025-09-07","duration":"2:10:41","url":"/play/19221148.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvYmIzODY5OTU4YTExNmUwM2UxNmVjODg0YTI0M2Q5OTcuanBn.cache","vod_id":19244750,"title":"Seorang dewi yang sangat cantik, pendiam dan menyendiri! Bentuk tubuhnya yang berlekuk dan pose-posenya yang menggoda sangat memikat.","lastmod":"2026-02-14","duration":"0:29:01","url":"/play/19244750.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZTgxMzg1Zjk3MzljOGJiYTMyYmQ1NjcyMDU3YTRhZjYuanBn.cache","vod_id":19118282,"title":"Tubuh menggoda yang meluap dengan hasrat! Seorang janda yang menyukai penis, menjilat dengan sangat menggoda – Fujisawa Reo!","lastmod":"2025-03-29","duration":"2:34:41","url":"/play/19118282.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZmZiMzNmNzZjNDY1OWM3Nzg1NDk2MjZhNzRhYTIzYTguanBn.cache","vod_id":19113259,"title":"Liburan musim panas di pedesaan sangat panas, dan aku mulai memiliki pikiran yang tidak pantas tentang kakak perempuan tetanggaku yang tidak curiga...","lastmod":"2025-03-29","duration":"2:01:13","url":"/play/19113259.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNTAxM2YyYzY4MTcwM2M4OTMwOGQyNzllYzg5YzhhYWMuanBn.cache","vod_id":19178271,"title":"Lambang kesucian murni! Seorang wanita muda yang benar-benar cantik memukau! Sangat imut dengan kacamata berbingkai hitam, kamar berbayar yang langka, telanjang sepenuhnya, memperlihatkan vulva lembutnya, membelakangi...","lastmod":"2025-03-30","duration":"0:16:35","url":"/play/19178271.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvNDI3ZDhmYzk4N2VlNjNlYjc3YTQ0NjgxOGM2NTkxODAuanBn.cache","vod_id":19259308,"title":"Sang wanita yang sangat kontras, si jalang tertindas berkacamata, Saudari A-She - seorang guru perempuan cabul yang mengenakan stoking hitam terbuka di selangkangannya dan teman-teman daringnya.","lastmod":"2026-05-18","duration":"0:03:45","url":"/play/19259308.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA5MjQvNTM1NjgwZTgxZTBiMDI0OTJjMzQ2Njk4MGZjNmQ0MmUuanBn.cache","vod_id":19223655,"title":"Gadis kecil yang polos BadAngels6667","lastmod":"2025-09-23","duration":"0:59:03","url":"/play/19223655.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvODVkYTIxMDk5NTdlYmM2YTI2Yzc1MjZiOGRhMjYzNjIuanBn.cache","vod_id":19154366,"title":"Seorang siswi yang polos dan lugu merekam dirinya sendiri saat disetubuhi dari belakang oleh pacarnya sambil memegang ponselnya di depan cermin. Payudaranya yang besar sungguh menakjubkan, dan dia menjerit kesakitan saat disetubuhi (1).","lastmod":"2025-03-30","duration":"0:10:37","url":"/play/19154366.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZTc3MjQyNDljZTgzNDViZGZhOTFhZTAzN2JjYzMwOTAuanBn.cache","vod_id":19114910,"title":"Payudaranya menempel erat padaku, ciuman yang dalam dan intens, bisikan kata-kata di telingaku—dipandu oleh daya tarik tiga kali lipat temannya, aku mencapai puncak ejakulasi.","lastmod":"2025-03-29","duration":"2:53:13","url":"/play/19114910.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZGE0NTQ0ODgxODNhMjRiMmEzYjA5OTk0NWNlODE5NDguanBn.cache","vod_id":19051862,"title":"VENU-914 Kakak perempuan istriku tiba-tiba muncul dan kami berhubungan seks selama dua hari satu malam. (Nonomiya Suzu)","lastmod":"2025-03-29","duration":"2:03:13","url":"/play/19051862.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvM2UwY2QwZmNjODJhMjQ5OWEwYTA1MTU1YWNlMjgyNDAuanBn.cache","vod_id":19073995,"title":"Seorang wanita yang sudah menikah menggunakan seks oral untuk merayu seorang pria muda hingga mengalami ejakulasi berulang kali!","lastmod":"2025-03-29","duration":"2:15:48","url":"/play/19073995.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA0MjIvMzcyZDg0MTY0YzcyNDIxMjExMjkwM2Y4NDU3ODU2YjYuanBn.cache","vod_id":19198818,"title":"Celana dalam thong yang tertutupi oleh bokongnya: Malfungsi busana dan godaan istri tetangga saya yang berbokong besar. (DVDMS-907-C)","lastmod":"2025-04-22","duration":"","url":"/play/19198818.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvYzc3YzQ3NjFjN2Y5NWNmYzk2ZGE4MTcxMTNmMTMyNDAuanBn.cache","vod_id":19181552,"title":"Pelacur muda dan cantik itu diperkosa sepuasnya oleh pria itu. Itu adalah hubungan seks bertiga yang penuh gairah, dengan erangan dan desahan cabul yang terus-menerus. Dia dirusak dan ditusuk dalam berbagai posisi, dan pria itu bahkan menunggangi lehernya dan memperkosa mulutnya. 《1》_ (1)......","lastmod":"2025-03-30","duration":"0:10:07","url":"/play/19181552.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZTJjMzI5NjRiYmUwNGUwNDVlMDFhM2EzMDA0YWY5Y2IuanBn.cache","vod_id":19113847,"title":"#1 Seorang gadis cantik berpayudara besar memperlihatkan wajahnya sementara seorang pria menciumnya, mengusap payudaranya, dan menggoda kemaluannya, membuatnya mengerang. Ekspresinya genit sekaligus menggoda. Pria itu melakukan seks oral padanya, memasukkan penisnya yang besar, dan menggaulinya dengan keras.","lastmod":"2025-03-29","duration":"0:09:59","url":"/play/19113847.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA2MjcvYmE2ZGJkYmNmODgyNjZjMGY1NTUyNWZjNzMwMjczYWEuanBn.cache","vod_id":19265597,"title":"高潮后敏感度100%的小穴再猛烈抽插无限抽插高潮绝叫 瀬戸ひなこ MAXING","lastmod":"2026-06-26","duration":"2:02:45","url":"/play/19265597.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZDJkY2UzMWExNmIxMjQxMWM1OGY1Zjk5MTMzMDUyYjEuanBn.cache","vod_id":19103316,"title":"Wanita muda yang menggoda si iblis itu sedang berhubungan seks dengannya.","lastmod":"2025-03-29","duration":"0:11:10","url":"/play/19103316.html"}]},
videoTitle: 'Seorang wanita muda berambut pendek yang polos dan cantik, memperlihatkan payudara dan vulvanya dengan cara yang menggoda, menggosok klitorisnya dengan jari-jarinya sambil duduk di kursi, bermasturbasi dengan mainan seks, mengerang saat ia menggerakkan penisnya masuk dan keluar. Sangat memikat.',
language: 'id',
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('Tautan berhasil disalin!');
}).catch(() => {
// 降级到旧方法
document.execCommand('copy');
alert('Tautan berhasil disalin!');
});
} else {
// 降级到旧方法
document.execCommand('copy');
alert('Tautan berhasil 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=/`;
}
};
}