Hindi malamang na amateur na makinang pangdila, matinding 50 magkakasunod na ejaculation! Ang sukdulang seleksyon ng oral sex ng mga magagandang S-class na S-class na amateur","lastmod":"2026-07-11","duration":"04:00:34","url":"/play/19154164.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZjExOTEzNWZiMGE2ZGI2MTQ4NTVjMGQ4ZTkzZGIzMTAuanBn.cache","vod_id":19035263,"title":"[Eksklusibong Tsismis] \"Insidente ng oral sex sa high-speed rail\": Nagsagawa ng oral sex ang batang magkasintahan sa publiko sa isang high-speed na tren patungong Jiamusi!","lastmod":"2025-03-29","duration":"00:00:56","url":"/play/19035263.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEwMTcvOTQ3NjZhN2FhMTVmZjEwYzczMzBhY2JkODI4ZGQxZGIuanBn.cache","vod_id":19101104,"title":"Isang batang babae na nagpapanggap na matamis at ang kanyang matalik na kaibigan ay nagsasagawa ng oral sex sa isang binata na may tattoo habang kinakarga siya nito.","lastmod":"2025-10-16","duration":"27:06","url":"/play/19101104.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvY2EwZmQ1MjNhOTNhZTMxZTQ4NjI1NTljZTIzMTI2MDkuanBn.cache","vod_id":19006077,"title":"Itim na medyas na babae sekretarya ay makakakuha ng brutally fucked at pangmukha ejaculated 1","lastmod":"2025-03-28","duration":"11:48","url":"/play/19006077.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNjM3NWEzNDg1ZWIwMjRhNTAxODg3N2U0NWI5MjNlODguanBn.cache","vod_id":19037562,"title":"uh. Nandito ka lang sa tabi ko ▼ Muling pagsasama namin ng aking kapatid na babae ~ Fujii Reiru.","lastmod":"2025-03-29","duration":"03:23:27","url":"/play/19037562.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMDhkNmMwN2JkNTY0ZDY0OTJjZjkzMDA4ZWM2ZTljZTMuanBn.cache","vod_id":19138751,"title":"Pakikipagtalik sa aking magandang kasintahang nasa kolehiyo na nasa junior high school sa attic - seksing itim na medyas, bukas ang puwitan, maraming posisyon, maraming matapang na pakikipagtalik - Sa tingin ko ay umiyak siya mula sa likuran.","lastmod":"2026-04-22","duration":"11:02","url":"/play/19138751.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA2MDcvZDI3MzRlMmZkYTQ3ZjVmNjIxMDcxOGE3ZjNjY2M0MjMuanBn.cache","vod_id":19147891,"title":"Isang babaeng may malaking suso mula sa Gen Z ang nagising na nababagot habang umiidlip sa hapon at tinawag ang isang puta mula sa isang nayon sa lungsod papunta sa kanyang bahay. Ang puta ay isang bata, balingkinitan na babaeng taga-nayon na nakasuot ng uniporme sa paaralan.","lastmod":"2026-06-06","duration":"09:43","url":"/play/19147891.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA4MDQvYjNmNDRmOThlODAwYmUyODQzYTk0MDAyY2M5OGJjNTUuanBn.cache","vod_id":19087833,"title":"SVGAL020 Pag-o-overtime nang hatinggabi... Nang nasa sukdulan na ang pressure, biglang lumitaw ang isang diwata sa harap ko at dahan-dahang binigyan ako ng oral sex na parang diwata.","lastmod":"2025-08-03","duration":"02:15:49","url":"/play/19087833.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMDExZDhiMGRmMTgxZDlhMjAyMGVlN2YxZGVjZWJjNTUuanBn.cache","vod_id":19026832,"title":"Ang babaeng katabi mo ay 21 taong gulang!","lastmod":"2025-03-29","duration":"44:26","url":"/play/19026832.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA0MTcvZTk4OWVkOWFiNmU0Yzg2YTAxMGQwNDI4MDUwODQxNzUuanBn.cache","vod_id":19069965,"title":"Babaeng may mataas na kalidad na naka-maikling palda, nag-french kissing, oral sex, pang-aakit, pagpasok sa puwitan, matinding pakikipagtalik, ungol at paghingal.","lastmod":"2025-04-17","duration":"38:05","url":"/play/19069965.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvNjczZGI4MTA2NGMzNjViZDZlYjdiOThjZjY4MjFiYWYuanBn.cache","vod_id":19143885,"title":"Ang ikaapat na pagpapakita ni ssrpeachelle: Babaeng amo na nakasuot ng maikling palda at itim na medyas, mapang-akit na pagdila, oral sex, pagsakay sa kabayo, matinding labanan, at sukdulang BDSM.","lastmod":"2026-05-17","duration":"27:26","url":"/play/19143885.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMjc5Yjg4ZmM4ZWJlMWIyNDc5NjE4YWExMjYzNzJmOTEuanBn.cache","vod_id":19137330,"title":"Isang 19-taong-gulang na babae na may maputi at magandang dibdib, at walang buhok na kulay rosas na ari, inihahanda ang kanyang matalik na kaibigan para sa isang threesome. Nagpapalitan sila sa pagsakay sa ibabaw at masiglang pagtutulakan.","lastmod":"2026-04-16","duration":"01:01:43","url":"/play/19137330.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZTQ3MzE2MmM5NjhlN2M0YWFiZDg3N2ZmMzZkOWYyNTUuanBn.cache","vod_id":19066255,"title":"Wala itong kinalaman sa kagandahan o kahalayan; gusto ko lang makipaglaro kay Ms. Mizuto. Mizuto Mai Nai YST-288-C","lastmod":"2025-03-29","duration":"01:44:03","url":"/play/19066255.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZWVkYzRlZWY1ZmUxM2JiNTJhOWY2OTU2ZTQzNjc2YjguanBn.cache","vod_id":19142718,"title":"Nuomibaby seksing damit pantulog at itim na medyas, mapapabulalas ka ba nito?_Ngayon, ikaw ang maliit na babae ng iyong amo, sana'y magsaya ka.","lastmod":"2026-05-12","duration":"10:06","url":"/play/19142718.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZjQ5MTM4MmFhMGMwYzA0OGI5N2E0ODRmNTI3YTQyYTguanBn.cache","vod_id":19140343,"title":"Ang maselang tindera sa opisina, sabik na sabik na maabot ang kanyang mga target sa pagbebenta, ay walang ibang magawa kundi ialok ang sarili sa mga kostumer.","lastmod":"2026-04-30","duration":"21:56","url":"/play/19140343.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvNDFkOGYxNWIzZTUzOTYwOTczY2NkNzJkZmU0NWMxYmIuanBn.cache","vod_id":19129317,"title":"Humarap ang lalaking nakasalamin sa pakikipagtalik, hinamon ang nangungunang modelo na naka-itim na medyas at nag-cosplay bilang isang bunny girl - pagbubuhat ng binti at pagtulak - pagsakay at paglalabas ng bula - perpektong pagpapakita ng mukha","lastmod":"2026-03-08","duration":"24:00","url":"/play/19129317.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA5MTUvZDFhZjM3YjdhYjY4MGNkOGFiOGQxMWYwYzk5NzAxM2QuanBn.cache","vod_id":19095651,"title":"[Ganap na Subhetibo] Isang taon na paghihintay para sa isang appointment! Isang napakaganda, balingkinitang babae na may napakahabang binti ang sumailalim sa isang super-premium na panlalaking grooming treatment na kumukuha ng lahat ng kanyang esensya. Akari Tsumugi IPZZ451","lastmod":"2025-09-14","duration":"02:17:02","url":"/play/19095651.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA3MTAvMDQ4YTkyN2M0YzJiZGVlMmU1N2FkYzA1MzY3MTY4OTUuanBn.cache","vod_id":19154442,"title":"Ang isang dalagang nasa kolehiyo ay talagang napakahusay, kaakit-akit, balingkinitan, maputi, seksing itim na medyas, malakas na ibinuka ang kanyang mga binti at nakikipagtulungan sa pagtulak at pagkabog, oh oh ungol.","lastmod":"2026-07-11","duration":"15:54","url":"/play/19154442.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvOGJlZmQ4OGFmYzYzNWNlMjg5OGM1YTNkZGE3ZGI1NWUuanBn.cache","vod_id":19117832,"title":"Napakaganda ng kaibahan sa pagitan ng seksing babaeng naka-itim na medyas at ng babaeng loli, napakasarap sa pakiramdam na makipagtalik sa kanya mula sa likuran.","lastmod":"2026-01-11","duration":"14:51","url":"/play/19117832.html"}]},
videoTitle: 'Isang binibining nakasuot ng itim na medyas na may magagandang binti ang nagsasagawa ng oral sex sa kanyang kulay rosas at malambot na ari.',
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=/`;
}
};
}