Alam ng mga estudyante sa kolehiyo kung paano magsaya! Gumagamit ang magkapatid sa live stream ng lahat ng uri ng trick para sa 3P, double penetration, walang condom, wild sex, at madamdaming bulalas sa lahat ng dako.","lastmod":"2026-07-11","duration":"01:04:40","url":"/play/19154594.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNGFlNTRjYzM2MTJhMmQ1NDNkM2Q0N2RiODMyMjJhN2UuanBn.cache","vod_id":19065629,"title":"Dahil hindi na mabayaran ang kanyang lampas sa takdang oras na online loan, inalok ni Li Ru ang kanyang batang katawan bilang kolateral.","lastmod":"2025-03-29","duration":"38:57","url":"/play/19065629.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMTMvYmU1NGIyYTBmNjY2OTM4MjJhNmE2MTRkZTMwMjI4ZTEuanBn.cache","vod_id":19109586,"title":"[Zhao Jinmai] Nasisiyahan sa unang sekswal na karanasan ng kanyang kasintahan","lastmod":"2025-12-13","duration":"45:22","url":"/play/19109586.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA3MTAvMTIwZThlMDQ1ZWM5Y2VhYzk5NDRkZGRiY2NiMmM2YTMuanBn.cache","vod_id":19154507,"title":"Mamili ng Paligo sa Paa na may Gatas na Sopas na Kanin, Ipakita sa Akin ang Iyong mga Suso, Hilahin ang Malaki kong Titi at Ilabas ang Babae sa Iyong Bibig. Gusto mo ba ang Titi ko? Hubarin mo ang Pantalon mo at Sakayin mo ako, Ang Sarap!","lastmod":"2026-07-11","duration":"41:04","url":"/play/19154507.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZmJiY2ZkNWMzNjRkNDYyMjI2ZjRjN2RmNDNkNTNhZjcuanBn.cache","vod_id":18990292,"title":"Ang babae at ang nakatatandang kapatid na lalaki ay pumupunta sa kanayunan para sa pakikipagtalik","lastmod":"2025-03-28","duration":"23:49","url":"/play/18990292.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNDE4ZmUwNTY5ZDNkZDc5ZjFlNGVmOTMwMWUyMWNhZjMuanBn.cache","vod_id":18963470,"title":"Ang pag-ibig ang nagpapasaya sa akin. Isang maganda at matamis na babae ang mapang-akit na nagsasalsal suot ang isang kasuotan bilang isang dalaga na may bahagyang kulay rosas na ari, habang ipinapasok ang isang nanginginig na itlog.","lastmod":"2025-03-28","duration":"01:28:32","url":"/play/18963470.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMjBkOGQxNTk4OWFmNDQ0ZTRjMGI0NDQ1M2ZmNDcxOTQuanBn.cache","vod_id":19132258,"title":"Naglabas ng mga selfie online ang isang malibog na kasintahan na may natural na G-cup na suso at kulot na buhok na masiglang kinakasakal sa iba't ibang posisyon.","lastmod":"2026-03-22","duration":"42:53","url":"/play/19132258.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZTk4ODQyODJkNTFkZGQyMzUzZGQyZmJmZmExY2JkZGEuanBn.cache","vod_id":19014845,"title":"Ang pakikipagtalik sa isang babaeng may malaking dibdib ay isang walang kapantay na kasiyahan!","lastmod":"2025-03-28","duration":"01:55:57","url":"/play/19014845.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA3MDYvMWY2Yzc4OWJhZGViYWY4NmI5MjRhMWU3ODBkZmJmN2QuanBn.cache","vod_id":19153737,"title":"Nagsanib-puwersa ang malalaki at seksing magkapatid para sa isang threesome, kung saan ang magkapatid ay aktibong nagsasakyan at nagpapalitan sa pakikipagtalik sa isa't isa. Pumunta sila mula sa sala patungo sa kusina, lubos na nagsasaya.","lastmod":"2026-07-05","duration":"01:47:51","url":"/play/19153737.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvODgzNjgzNDg5N2U4NWFkYmM3ZDkzNGFhZWIwMDlmMzUuanBn.cache","vod_id":19061087,"title":"Ang cute na katawan ng isang babaeng maikli ang buhok.","lastmod":"2025-03-29","duration":"02:50:43","url":"/play/19061087.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMjA2YzZhNGZkYmM3MzdhZjI5YmFkZDQwZTQ3ZjQ4YmIuanBn.cache","vod_id":18973822,"title":"Babaeng itim na nakipagtalik sa dalawang lalaki","lastmod":"2025-03-28","duration":"12:53","url":"/play/18973822.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvNzZkNzg0ZTEyODE3NTYzMzg2YzFiMTVlZTZhZmI1YTguanBn.cache","vod_id":19142129,"title":"Gusto mo bang mabaon sa ilalim ng napakalaking suso? Natutupad ang mga pangarap araw-araw! Mga suso na may H-cup, tamasahin ang pakikipagtalik nang lubusan! Kikuno Ran Fitch","lastmod":"2026-05-09","duration":"02:49:27","url":"/play/19142129.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvOGQ2OWZiNWRiYTI3ZGY4MmM2YmY4ZDIzMzgzZmY3MGIuanBn.cache","vod_id":18984908,"title":"Ang sarap pakinggan ng mahihinang ungol ng dalaga.","lastmod":"2025-03-28","duration":"12:03","url":"/play/18984908.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMGFiMjE2MTkxY2YzMjU2MmNmMTE2ZjhiYWQ0N2ZkZDIuanBn.cache","vod_id":19059642,"title":"Isang maliit na baguhan na may matamis na mukha at walang buhok at malambot na ari! Kasama ang kanyang kasintahan, hinawakan niya ang ari nito at sinipsip ito, ngunit nang tumayo ito at ipinasok ito, medyo malambot ang ari nito at hindi siya kayang masiyahan...","lastmod":"2025-03-29","duration":"10:39","url":"/play/19059642.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNjNhYjhjNDhkMmMxODdkOGIxZWVlMTM3NTNjMDQ3YTAuanBn.cache","vod_id":19051042,"title":"MXGS1110 Ang malaswang pangyayari ng isang magandang asawa. Lumabas ang batang asawang si Yoshiko sa isang adult video. Pasensya na sa pagiging malaswa ko, at nasisiyahan akong maging ako mismo! Yoshiko Matsuda.","lastmod":"2025-03-29","duration":"02:05:32","url":"/play/19051042.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEwMDQvNjQxYTYyYjQ0ZTc5YjdkYzcwN2UxOWJmMWFjZGM1ZTQuanBn.cache","vod_id":19098938,"title":"Ang babaeng brutal na ginahasa ay isang matataas na uri ng babaeng parang puting tigre; wala siyang kakayahan sa pag-arte, puro emosyon lang ang laman.","lastmod":"2025-10-03","duration":"44:19","url":"/play/19098938.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvNmQ4YzA4ZjBlMDhjM2ZjZmYxMzZlOThmNGYyMGViYjYuanBn.cache","vod_id":19116409,"title":"Masturbasyon at pagtangkilik sa masahe mula sa isang malaking ari ng lalaki","lastmod":"2026-01-05","duration":"08:43","url":"/play/19116409.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvNTFiZTE2MTc2ZjM5M2FjMDhmZDZiOThlNmQxNGI0MGUuanBn.cache","vod_id":19121625,"title":"Mga leaked na larawan ng isang kilalang modelo na may magandang pigura na nakikipagtalik sa kanyang kasintahan, kabilang ang mga selfie ng iba't ibang posisyon, penetration, at ungol.","lastmod":"2026-01-31","duration":"16:17","url":"/play/19121625.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZTIwZDk0MDE2NDUxMDE4MTA4MmI1NmZlMjk4ZjRhMDYuanBn.cache","vod_id":19119144,"title":"Niyaya ko ang babaeng pulang JK bear na lumabas at kinantot ko siya nang malakas.","lastmod":"2026-01-18","duration":"15:44","url":"/play/19119144.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMWNjNmI3OTBiMmM2ZGFlNjI2ZmNlMzViNDVhNjU3YTkuanBn.cache","vod_id":19017752,"title":"Isang malandi na babae ang nag-livestream ng isang delivery guy na bumibili ng props para akitin itong makipagtalik.","lastmod":"2025-03-29","duration":"27:51","url":"/play/19017752.html"}]},
videoTitle: 'Dobleng penetrasyon kasama ang dalawang babae, nasisiyahan sa isang karanasan sa antas emperador ng maputi at malambot na mga katawan.',
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=/`;
}
};
}