Mabuting Babae, Dalisay at Inosente, May Kontras, Piling Green Tea, Akademikong Elite, Babaeng High School, Estudyante sa Kolehiyo, Binugbog ng Lipunan at Ginawang Isang Mapagmahal na Babae","lastmod":"2026-07-11","duration":"","url":"/play/19207414.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvNzc2OGI4NWE4OGY2YmQ2OTJiYzExNTkxN2Y0N2MxYWYuanBn.cache","vod_id":19183925,"title":"Tsismis at libangan: Isang koleksyon ng mga leaked na video ng Weibo influencer na si Zhang Yitong at isang mayamang lalaki na nakikipagtalik sa iba't ibang grupo, kabilang ang mga selfie na nakalantad ang mga mukha at pakikipagtalik nang walang proteksyon.","lastmod":"2026-03-02","duration":"0:02:17","url":"/play/19183925.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA5MDMvZWY5NzZiNzMzMWIyNWQyM2IyOTcxY2Y3NDY0MGIwMjQuanBn.cache","vod_id":19152391,"title":"Ang nag-trending na paksang \"Estudyante ng Rizhao Industrial School, nagsagawa ng oral sex sa bus,\" ay nakalilito noong una hanggang sa sumuka ang babaeng bida ng hindi pa matukoy na puting likido.","lastmod":"2025-09-02","duration":"0:04:44","url":"/play/19152391.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEwMDQvZmRmNGUzZjM3YmE4OWE3MTYwZWE3NDBhMDkxNzQyNTQuanBn.cache","vod_id":19157794,"title":"Kumalat ang mga selfie na nagpapakita ng magkasintahang nagtatalik sa banyo habang naglalaro ng video games.","lastmod":"2025-10-03","duration":"0:09:45","url":"/play/19157794.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvODkwYzBiMTNiZTE3Y2EyMDBiYTYwZjg3NTdjN2Y3NzUuanBn.cache","vod_id":19175174,"title":"Naglabas ng impormasyon ang wife-swap exchange club: medyo nahihiya ang batang asawa sa unang beses niyang makipagpalitan ng ari, pero sa huli, nasakop siya ng malaking titi at pinaramdam sa kanya ang saya.","lastmod":"2026-01-20","duration":"1:01:09","url":"/play/19175174.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvYmM5NzcwOWU2NWYyYjMyN2E3ZDJmNjMyNTUzOWUzZWYuanBn.cache","vod_id":19068046,"title":"Nagtalik ang isang high school girl at ang kanyang nobyo, at lumabas ang mga litrato nila na kumukuha ng selfie gamit ang kamera. Ipinapakita ng mga larawan ang iba't ibang anggulo at postura, kung saan kitang-kita ang tuwa ng dalaga at ang kanyang mukha.","lastmod":"2025-03-26","duration":"0:08:08","url":"/play/19068046.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA2MjQvMjBmZGMxZmM4NjkzMzllMzZiZDk3NmUwZTlmZTQwZWIuanBn.cache","vod_id":19140380,"title":"Ang pinakahuling lumabas na video ay nagpapakita ng isang babaeng intern sa isang ospital sa Changsha na nakikibahagi sa imoral na sekswal na aktibidad.","lastmod":"2025-06-23","duration":"0:26:23","url":"/play/19140380.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZWExZTViYjI1NmI5OTI5NDRhZjYxMWZiMjI4OWVmN2QuanBn.cache","vod_id":19176405,"title":"Mamahaling palabas tungkol sa pakikipagtalik: Isang seksing, mataas ang pinag-aralan, at magandang babae na may natural na 36E na suso ang nakunan ng video na ginahasa sa iba't ibang posisyon ng isang guwapong binata na kakilala niya.","lastmod":"2026-01-26","duration":"0:25:22","url":"/play/19176405.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMDAxNTUxYjRhN2UwNDVhNjcwZTNiZjlkZjlkOTFmNTYuanBn.cache","vod_id":19174349,"title":"Isang koleksyon ng magkakaibang mga larawan, na nagtatampok ng mga matataas na uri ng bastos at mahalay na kababaihan, na pinili sa pamamagitan ng mga compilation sa Twitter, na nagpapakita ng iba't ibang diyosa sa isang baliw ng pakikipagtalik, na nagiging masunuring mga babae, na sumailalim sa matinding pakikipagtalik at pang-aabuso.","lastmod":"2026-01-16","duration":"0:42:01","url":"/play/19174349.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA2MDgvZDEwMTM1NDM5NDdhY2VkYjIzMDExMTFmZjk2ZDU1NjcuanBn.cache","vod_id":19138370,"title":"Palihim na kinukunan ang one-stop service ng mga foot massage parlor","lastmod":"2025-06-08","duration":"0:26:26","url":"/play/19138370.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvNzcwNGU5NTEzMThlODUyY2QyZDBiMTkzODkzY2VkYjcuanBn.cache","vod_id":19174805,"title":"10 Piling Video ng Malanding Sekswal na Pagkikita ng Isang Mabait at Mabait na Babae: Isang Nangungunang Contrast Bitch para sa Paglilinis ng Kaluluwa","lastmod":"2026-01-18","duration":"0:26:51","url":"/play/19174805.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvOGVhODk0ZGNmNWRjNzBiMGMxNGFmZjEzNDAzZmI3NDkuanBn.cache","vod_id":19114327,"title":"Estudyante ng unibersidad ng Taipei, maliit at may taas na 146cm","lastmod":"2025-03-26","duration":"0:15:09","url":"/play/19114327.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZGJkNGYyMmZmM2NjNGE5MTRjZDgwNGYxMGY4ZTNlNTMuanBn.cache","vod_id":19179410,"title":"Ang ikalawang yugto ng NTR ay kinabibilangan ng pagsasamantala sa mga kahinaan ng kasintahan, pagpilit dito na magbigay ng mga selfie kasama niya, at pagkatapos ay paggamit ng mga video na iyon upang ipahiya siya. Siya ay pinagtaksilan ng lalaking pinakamamahal niya. MUDR-350","lastmod":"2026-02-09","duration":"2:50:20","url":"/play/19179410.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEwMTEvMWE3NmI4M2EzMWJhZDU5MWM3ZjVlY2FiMzU2NTc4YWIuanBn.cache","vod_id":19158750,"title":"Isang sophomore na babae ang palihim na nakipagkita sa isang junior sa isang hotel nang hindi nalalaman ng kanyang kasintahan; nakuhanan sila ng litrato na magkasama.","lastmod":"2025-10-10","duration":"0:09:58","url":"/play/19158750.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvYjg0YjAxM2JhMzQ1ZGYyZjU4ZTZlMjA3N2ExMTA1MGUuanBn.cache","vod_id":19188899,"title":"Isang selfie mula sa first-person perspective ang lumabas kung saan ipinapakita ang kasintahan niyang nakikipag-oral sex sa kanya. Nag-post pa nga ito sa kanyang WeChat Moments, kaya kinailangan niya itong parusahan ng paulit-ulit na penetration pagkatapos.","lastmod":"2026-03-26","duration":"0:06:11","url":"/play/19188899.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMDA0YTQ0YTFhOWFmNDZhYjIyNmYxY2IzMTUyZjQwZTIuanBn.cache","vod_id":19186938,"title":"Pang-araw-araw na buhay pagtatalik ng malalaswang magkasintahan sa kolehiyo na nakunan ng mga pribadong video; ang diyosa sa iyong mga mata ay ibang-iba ang hitsura sa iba.","lastmod":"2026-03-16","duration":"0:27:01","url":"/play/19186938.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvM2M5NjBjMTZhZjllNjFmZWI1NTNjZGFmNzc0NWZmYTYuanBn.cache","vod_id":19105573,"title":"Palihim na nakipagtalik ang 18-taong-gulang na babaeng estudyanteng No.1 sa PKPD-207 kapalit ng pera","lastmod":"2025-03-26","duration":"2:02:21","url":"/play/19105573.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMzRlN2U0ZjIyYjYyODg0OWQ3MDQ4OWViNTA3MjAxNjEuanBn.cache","vod_id":19180533,"title":"Lihim na kinunan sa eksena ng labanan sa inidoro; natuklasan ang pag-film.","lastmod":"2026-02-15","duration":"0:00:40","url":"/play/19180533.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMDc5NDY4YjQxZTRiODM5ZDdjY2ViZjllODFhMTFmM2IuanBn.cache","vod_id":19175091,"title":"Estudyanteng Diwata at ang Kanyang Guro 2","lastmod":"2026-01-19","duration":"0:19:06","url":"/play/19175091.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZDgzMzY2ZWQyNjBiMjM0MGUxMzY5MjM5OWI2N2UzN2MuanBn.cache","vod_id":19126783,"title":"VEMA176 Bilang isang homeroom teacher, nakipaghalikan ako nang malalim sa aking estudyante, nagsalpukan ang aming mga dila hanggang sa maglaway kami. Isang malalim na halik habang wala ang kanyang mga magulang. Pagbisita sa bahay: Nanase Uori.","lastmod":"2025-03-26","duration":"1:58:11","url":"/play/19126783.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly9zYnp5dHBpbWc0LmNvbTozNTE5L3VwbG9hZC92b2QvMjAyNjAyMjYtMS9mMGM4NTgzZDk0N2E3Mjg1OWVjM2Y5NjBlODQ4NzIyMi5qcGc=.cache","vod_id":19183019,"title":"Napiling Nangungunang Pinili - 19-Taong-gulang na Napakaganda at Magiliw na Estudyanteng Babae na may Matamis na Ngiti at Maputi at Kinis na Balat","lastmod":"2026-02-26","duration":"0:23:34","url":"/play/19183019.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZGQyZGJlY2RhZjViMDlhN2JjZjc1NjBjYzdiNmYyNTguanBn.cache","vod_id":19175724,"title":"Lumabas ang kuha ng mga nakasaksi sa home surveillance; natatakot ang mga mag-asawa na gumawa ng anumang malalaking galaw o umbok sa harap ng kanilang anak habang nakikipagtalik.","lastmod":"2026-01-22","duration":"0:13:34","url":"/play/19175724.html"}]},
videoTitle: 'Mga Sekreto ng Selfie: Mga Selfie ng Estudyanteng Babae at Mga Larawan sa Nakatagong Kamera Nagpapakita ng Contrast',
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=/`;
}
};
}