Le charme ultime de Lisa OL.","lastmod":"2026-07-11","duration":"","url":"/play/19207222.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA4MTIvZDdjZjRiOTI5YjYyMDNhMmQzYjBiOGNjNDExMDU0ODEuanBn.cache","vod_id":19148949,"title":"Relation incestueuse entre frères et sœurs, une sœur en uniforme scolaire, lubrique, séduit son frère en talons hauts et bas blancs","lastmod":"2025-08-11","duration":"0:19:03","url":"/play/19148949.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMTJmNzU3MmRmZDdjODFhYjlmOGZiYzA1ZmQyMjZmZTQuanBn.cache","vod_id":19083065,"title":"J'étais vierge et je regardais des vidéos pour adultes avec les amies de ma mère. Ces mères, qui regardaient des vidéos pour adultes pour la première fois, étaient excitées et disaient : « Je veux être une actrice comme Nogi Haruka, Tsujii Honoka, Nagano Tsukasa, etc. »","lastmod":"2025-03-26","duration":"3:25:32","url":"/play/19083065.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZTA3MTk3NzZiYWI3Njc3MWYzNzZkYzk4ZDljZTY3NjIuanBn.cache","vod_id":19190040,"title":"Meng Ruoyu RS003 Voleuse plantureuse sur le mur, fille riche aux gros seins","lastmod":"2026-04-01","duration":"0:38:46","url":"/play/19190040.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNTM5YWNkMTE2NjM5Yjg0ZmY0YzhiZTExNmM5NmI5YmMuanBn.cache","vod_id":19045838,"title":"Une fille à forte poitrine, les tétons dressés, se comportait comme une salope dans un bar.","lastmod":"2025-03-26","duration":"2:57:21","url":"/play/19045838.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvOTA2M2E5MjAxMGFlZTk5NDQ3YTIwMmUwYjlkOTY2N2EuanBn.cache","vod_id":19194424,"title":"Ogura Hikaru, la plus plantureuse et la plus sublime actrice amateur du quartier de Ginza à Tokyo, fait ses débuts dans le X. EBWH-222-C","lastmod":"2026-04-22","duration":"2:42:40","url":"/play/19194424.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMTUvMDMxYmRkOGVjMjlkMTY1YjhiMDdhYzRlYjFmYTVlMzguanBn.cache","vod_id":19168209,"title":"Sexe super séduisant et magnifique","lastmod":"2025-12-16","duration":"0:14:18","url":"/play/19168209.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMDViZDY5YjY4NzNjNzZhNmE0NmU2MmVhMWZhNjk0YzEuanBn.cache","vod_id":19026944,"title":"DVDMS-431 Observation générale hommes et femmes AV ~ Divagations d'étudiants universitaires Projet NTRS \"Je vais prendre 100 000 selfies en train de faire l'amour avec ma petite amie aux gros seins\".","lastmod":"2025-03-25","duration":"2:40:15","url":"/play/19026944.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA5MTkvODdhYWE1NjlkZDIxNmRmZDNjMmEzZGM3ZjY5NDNjMTkuanBn.cache","vod_id":19155171,"title":"J'étais obsédé par les gros seins de la vieille femme naïve de la campagne, et je faisais l'amour avec elle tous les jours, dans le dos de mon père. (Kosaka Himawari, Kosaka Himari, HZGD291)","lastmod":"2025-09-18","duration":"2:08:39","url":"/play/19155171.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNmQ2MmY5OTMwNTNlMmZjMzVlODJmMDM3MWM4ODJmNDEuanBn.cache","vod_id":19068886,"title":"Services spéciaux « exclusifs » proposés par des guides touristiques aux formes généreuses 1","lastmod":"2025-03-26","duration":"0:23:17","url":"/play/19068886.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNmZhODliZmVkYTllZDJlZTdiODg4MjAwZDJjNjMxYjguanBn.cache","vod_id":19083224,"title":"Tatouage de rose exquis, jeune femme de premier ordre, peau claire, beaux seins, fesses parfaites, scène de douche mouillée séduisante, gros plans ultra-rapprochés, jambes écartées et cuisses relevées de manière séduisante.","lastmod":"2025-03-26","duration":"0:42:20","url":"/play/19083224.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNTIxZDFjODE3ZDdiMTAwMjI2ZWNlYjE2Yjc0YmE4ZjYuanBn.cache","vod_id":19127630,"title":"Le baiser épais et aspiré du Général Anaconda, avec une langue de serpent blanc qui lèche jusqu'à l'os - Rika Aimi YMDD-285-C","lastmod":"2025-03-26","duration":"2:13:57","url":"/play/19127630.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNTI0OTM0MWViYWUwNjMzMTEzMDFhODYwOWUyN2ExNDcuanBn.cache","vod_id":19127305,"title":"Un jeune homme agresse sexuellement une femme au foyer, lui montrant son visage dissimulé sous des bas et lui imposant une fellation avec son pénis surdimensionné. Il la force également à lui faire une fellation. La pièce présente de nombreuses scènes et positions de rapports sexuels intenses. Ne manquez pas cette expérience excitante !","lastmod":"2025-03-26","duration":"0:33:39","url":"/play/19127305.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA3MjcvZjFkMGVjMjI1OTY0YmIwOWEzZTBhODRhNWRmNmM2NjcuanBn.cache","vod_id":19145897,"title":"Relation incestueuse entre une mère et son fils : le véritable parcours incestueux d'une mère sur cinq mois","lastmod":"2025-07-26","duration":"0:19:32","url":"/play/19145897.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEwMDEvMzJhNDlkZWU1YTFjOTRjMjhlMzUzNjhmMDY4MDBkM2YuanBn.cache","vod_id":19157245,"title":"Émission en direct mettant en scène deux jeunes femmes d'une beauté époustouflante, aux joues roses, qui se relaient pour séduire et captiver les téléspectateurs.","lastmod":"2025-09-30","duration":"0:30:51","url":"/play/19157245.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA3MTAvZDRiOTViYWU1ZTdkNjk0NDY2NjU0MjMyNGEwOTE0ODcuanBn.cache","vod_id":19142837,"title":"Ancien temple Zhongsanli Ganlu Ononoba","lastmod":"2025-07-09","duration":"0:01:30","url":"/play/19142837.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZDRkN2FiMGE0MGZhMGU1MGI5MGVlZTIzYmExYzlkYjAuanBn.cache","vod_id":19193683,"title":"La petite amie de mon frère, c'est Mademoiselle Mengyes, la numéro 1, et il n'a pas pu résister à la tentation de la blague. (Tianchuan Sky MTALL-076-C)","lastmod":"2026-04-19","duration":"2:16:07","url":"/play/19193683.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMjQ5NTg1N2UzNTg0N2RjMjc1NmNjZTAxMzc4MzBkY2MuanBn.cache","vod_id":19121795,"title":"NA MA017 [Tournage privé] Yuzuki-chan_23 ans_Tatoueuse_Love hotel_Gros seins_Sexe des seins_Tatouage_Belle fille_Taille fine_Sexe oral sexy_Léchage de tétons et masturbation_2 éjaculations_2 rapports sexuels_Éjaculation faciale_Tournage des seins_Éjaculation abondante","lastmod":"2025-03-26","duration":"1:14:38","url":"/play/19121795.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMDI2Yjg1YzI1NjRiOWVhMzQ1YmNkOTI4ZGQwYTEzMmQuanBn.cache","vod_id":19067540,"title":"Le compte de stockage cloud de Fat Uncle a été piraté, et il a refusé de payer la rançon. Le pirate a alors diffusé la vidéo où on le voyait filmer secrètement une femme dans une maison close, sous plusieurs angles. Il avait une liaison avec une étudiante en finance aux formes généreuses, experte en fellation et dominante.","lastmod":"2025-03-26","duration":"1:27:11","url":"/play/19067540.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZWVmYjY0NTg2OTBkMTgzZjIyZTkwMDVkZTcwNTZiNzIuanBn.cache","vod_id":19033145,"title":"Leçons de baisers sensuels et humides d'Arina, actrice de films pour adultes - Arina Shin","lastmod":"2025-03-26","duration":"2:59:33","url":"/play/19033145.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvODg4ZGIwYmJkNDg5ZjZlZGNmNGY4ODZmYmMxODUwODUuanBn.cache","vod_id":19191855,"title":"Téton Bi ng Gros seins collations mère langue collante baisers séduisants dynamiques angle sensuel Ono Yuko","lastmod":"2026-04-10","duration":"2:02:05","url":"/play/19191855.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMWVmOWM5NDI5MmVhZWMwMDU1ZDYyMWY2YmJlOWM1YmYuanBn.cache","vod_id":19122130,"title":"TNOZ003, poitrine généreuse de 130 cm, couche DeM partielle, 19 ans.","lastmod":"2025-03-26","duration":"2:15:32","url":"/play/19122130.html"}]},
videoTitle: 'Téton Bi ng Gros seins collations mère langue collante baisers séduisants dynamiques angle sensuel Ono Yuko',
language: 'fr',
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('Lien copié !');
}).catch(() => {
// 降级到旧方法
document.execCommand('copy');
alert('Lien copié !');
});
} else {
// 降级到旧方法
document.execCommand('copy');
alert('Lien copié !');
}
}
},
// 切换布局
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=/`;
}
};
}