Debut ng isang nangungunang baguhan sa industriya ng pelikulang pang-adulto! Ang kanyang malambot at malibog na puke ay brutal na kinantot at kinain nang walang condom.
Ang mabuting asawang babae ay naging scapegoat at alipin sa pakikipagtalik. Si Oishi Saki ay brutal na kinantot at ibinulalas sa loob.","lastmod":"2026-07-11","duration":"","url":"/play/19245902.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMjJjOTRhM2E4ODkyODRkN2Y5ZTZmM2JlNjcyYjRmNDUuanBn.cache","vod_id":19225274,"title":"MIDA-495 Busty Maid Shiraishi Nami ay kinantot hanggang sa orgasm at nawalan ng kontrol sa kanyang pantog ng kanyang amo, ang kanyang puke ay kumikibot at nagmamakaawa para sa awa habang ibinubulalas niya ang kanyang loob.","lastmod":"2026-03-30","duration":"2:04:09","url":"/play/19225274.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA3MDUvNTMyODVlZGQ3MjNjY2MwNDY5ZjI3MGVlMWVhYjM0YzQuanBn.cache","vod_id":19243980,"title":"Pribadong Pagnanasa 1: Isang mahalay na babaeng may asawa ang nagkaroon ng karelasyon sa hatinggabi, kung saan ang malalaking suso ay brutal na kinantot hanggang sa mawalan siya ng kontrol sa kanyang pantog.","lastmod":"2026-07-05","duration":"0:29:45","url":"/play/19243980.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvNzhhN2E5ZjE5MTVjODA1NzRlZDA2MDFiYzI5NjFiODAuanBn.cache","vod_id":19212334,"title":"Itim na medyas at mataas na takong, isang napakagandang babae na may masiglang puwet! Mahahabang binti, pag-angat ng balikat, walang condom, mabangis na pakikipagtalik, oral sex, at cumshot nang sabay-sabay.","lastmod":"2025-12-31","duration":"1:01:25","url":"/play/19212334.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvY2ZiNDAxMGJmN2EzYTdhMGVlZDIzMjFkYTE0MTgyMjguanBn.cache","vod_id":19231468,"title":"Brutal na kinantot si Sara Luvv ni James Dean! Napuno ng tamod ang kanyang puke, at nilunok ng puta ang lahat ng puting likido!","lastmod":"2026-04-29","duration":"0:11:04","url":"/play/19231468.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNzNkYmVlNTNiZDBkNzgxMmE5NmM5MmY1YzY4MzFiNjAuanBn.cache","vod_id":19065551,"title":"Isang babaeng parang modelo, na nakasuot ng itim na medyas na lambat, ay naliligo nang hubad sa banyo, nakabuka ang kanyang mga binti, may makapal na buhok sa ari at isang maliit na bulkan, at nakikipagtalik nang walang proteksyon sa posisyong cowgirl.","lastmod":"2025-03-28","duration":"01:33:34","url":"/play/19065551.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZGYzYTU0Mjg4YjNhMTQ5MzEwMDYyZjQ5NzExMzZhMGQuanBn.cache","vod_id":19114797,"title":"Tahimik, medyo malibog na dilag na nakikipagtalik sa kanyang katalik.","lastmod":"2025-03-29","duration":"","url":"/play/19114797.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA2MjMvZTU2NzlkZTgxZjQ3YmMzMTI0ZmU5NGE2ZTJmYzYxODAuanBn.cache","vod_id":19242309,"title":"Isang batang babae na may malaking dibdib na may pigurang orasa, nakipagtalik nang husto hanggang sa pumulandit ang kanyang puke.","lastmod":"2026-06-25","duration":"0:24:10","url":"/play/19242309.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvYWE0ZjI1ZGMwZjc0OTlkM2FkMzU3YzNhMmQzYmNhMDMuanBn.cache","vod_id":19236567,"title":"Isang modelo ang nahuling palihim na kumukuha ng tiket sa halagang 138 yuan! Nabunyag ang pakikipagtalik at paglabas ng ilong ng modelo.","lastmod":"2026-05-21","duration":"0:51:26","url":"/play/19236567.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvODE2NzZiZWYyOWNjY2U2MTAxMzBiZGZhOGFkYzY5MGIuanBn.cache","vod_id":19234425,"title":"Si Chunyang Menghua ay brutal na kinantot ng sarili niyang anak, at naging laruan nito. Walang humpay niya itong kinantot at ibinulalas sa loob niya araw-araw.","lastmod":"2026-05-16","duration":"1:58:48","url":"/play/19234425.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMjEzYjE3NDM4ODdkYjRkZDcwODYzYTUzZjY2NDAzNDUuanBn.cache","vod_id":19231446,"title":"Pinalitan ang mukha at brutal na kinantot ang nakamamanghang si Dilraba Dilmurat! Ang kanyang walang habas na puke ay marahas na napuno ng semilya, at hindi mapigilang nagbubulalas siya habang nasa kasukdulan!","lastmod":"2026-04-29","duration":"0:04:50","url":"/play/19231446.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvYTZmM2QxZDM5N2MxZTBiNjZkNmIyMWVlOTVhODAyMWEuanBn.cache","vod_id":19224592,"title":"Tatlong magkapatid na babae ang naglalaban kay Lu Bu, tatlong mapang-akit na magkapatid ang nagpapalitan ng pag-atake sa isang maskuladong lalaki, sabay na bumukas ang dalawang butas para sa internal ejaculation.","lastmod":"2026-03-30","duration":"0:30:23","url":"/play/19224592.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvNDc3NjYzNDYzZTEyMGE0Njc1OGQyNWJiNDk4ODVkMGIuanBn.cache","vod_id":19227907,"title":"POVdreamsCOM - Sumabog ang Pagnanasa sa Sinehan: Natapos ang Malaswang Pagsakay at Pagtatae ni LittleCaprice, Isang Mataas na Banyagang Kabayo","lastmod":"2026-04-09","duration":"0:14:37","url":"/play/19227907.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvZGU4YWRiNGZjNzc4MjRjZjcwMjM4ZmQyMDEwMmQ5OGIuanBn.cache","vod_id":19241353,"title":"Dalawang hot babes ang brutal na kinantot ng isang kahanga-hangang matandang lalaki! Isang espesyal na episode na nagtatampok ng sunod-sunod na cumshots at patuloy na matinding pakikipagtalik.","lastmod":"2026-06-19","duration":"2:22:41","url":"/play/19241353.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA3MTEvZWI3MTUyN2E2ZTNmMDAwNzUxM2UyMjNiNGE0ZGI2YjUuanBn.cache","vod_id":19246638,"title":"Si Mina Kitano, isang malaswang ginang, ay brutal na kinantot at ibinulalas sa loob ng isang tycoon; kitang-kita ang kanyang malaking puwitan, malaswang ari, at tuwid na mga utong.","lastmod":"2026-07-14","duration":"","url":"/play/19246638.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNWRkMDUxNmYxZDAxM2MxYzM3MWM5ZWUyODhkMmJmYWYuanBn.cache","vod_id":19035141,"title":"[Mga Subtitle na Tsino] MCSR-376 Ang sukdulang maybahay ay nagdumi sa harap ng kanyang asawa... Shiiba Miku","lastmod":"2025-03-28","duration":"02:09:42","url":"/play/19035141.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvYjcxMTViNDdhZTkzZWU5NGQ3ZjkyMTg5ZjA2ODhkYmQuanBn.cache","vod_id":19044204,"title":"Isang napakagandang babae na may kahanga-hangang pangangatawan ang binigyan ng droga at ginawang walang magawa, hinayaan ang sarili na paglaruan kung kailan niya gusto. Ang kanyang maputi at magandang pangangatawan, mahahabang binti, magagandang paa, medyas, at matataas na takong...","lastmod":"2025-03-28","duration":"00:15:58","url":"/play/19044204.html"}]},
videoTitle: 'Debut ng isang nangungunang baguhan sa industriya ng pelikulang pang-adulto! Ang kanyang malambot at malibog na puke ay brutal na kinantot at kinain nang walang condom.',
language: 'fil',
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('Nakopya na ang link!');
}).catch(() => {
// 降级到旧方法
document.execCommand('copy');
alert('Nakopya na ang link!');
});
} else {
// 降级到旧方法
document.execCommand('copy');
alert('Nakopya na ang link!');
}
}
},
// 切换布局
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=/`;
}
};
}