Boire de l'alcool augmente la libido !! Sexe NTR avec les femmes de 8 amis. Avec Ichijo Kimika, Enjo Hitomi, Shindo Nozomi, etc. Projet KSB - Emaniel","lastmod":"2026-07-11","duration":"04:03:20","url":"/play/19163495.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYWY3ZTBmMTU2NTg1OGY5MDM2YTBlMGYzZWY5ZTZlZDIuanBn.cache","vod_id":19016799,"title":"MIAA-130 J'ai succombé à l'amour supposé de la meilleure amie de ma fille et j'ai accepté une fellation qui ne devait être qu'une aventure d'un soir... Akari Mitani","lastmod":"2025-03-24","duration":"01:58:47","url":"/play/19016799.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMmRlYmViMzZhOTFiMmI1NThlNzNmZDBiYWY0NjQxMGEuanBn.cache","vod_id":19019295,"title":"Après une dispute avec ma sœur, je ne sais pas pourquoi, j'ai commencé à faire l'amour comme une folle.","lastmod":"2025-03-24","duration":"30:32","url":"/play/19019295.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYjhiOGM0YmRlZDYxMjYxODA2YzkxOGI2YjFhODNhZjcuanBn.cache","vod_id":18996236,"title":"La déesse innocente, qui trompait son petit ami, avait hâte d'enlever sa culotte et de me laisser la baiser.","lastmod":"2025-12-14","duration":"30:10","url":"/play/18996236.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly9pYy4xNTUyNTAyMTQudG9wLzIwMjYwMjIwLzB5aWRJOHkyLzEuanBn.cache","vod_id":19144814,"title":"Li Ge, le troisième érudit le mieux classé, n'a aucun défaut de silhouette ni de visage ; c'est une déesse pour les pauvres et une mégère pour les riches.","lastmod":"2026-02-22","duration":"43:37","url":"/play/19144814.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvODYwNTJhYTM3OTM5OGIwMTFmNTFkNTRkNDcxYjQyOTkuanBn.cache","vod_id":19017522,"title":"[Recommandé] Une femme d'une beauté époustouflante fait l'amour avec son petit ami à la maison pendant que sa jeune sœur dort.","lastmod":"2025-03-24","duration":"27:23","url":"/play/19017522.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvODllNDRmNTU3OWM2Mzc4ZmY2Y2E1NzU5MmUxNmVhYTEuanBn.cache","vod_id":18986658,"title":"[Version intégrale] JUX-358 Je veux violer la belle mère de mon ami... Shinya Mizuki","lastmod":"2025-12-14","duration":"02:30:00","url":"/play/18986658.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA1MTEvZjlhMGRmNTY4NjVjYjNmYmUzZjRlMjYzMTA5NzQxYWQuanBn.cache","vod_id":19033077,"title":"10musume 041324_01 Visage nu d'une jeune fille amateur ~ Le visage nu d'une étudiante sexy, même son petit ami n'ose pas regarder ~","lastmod":"2025-05-11","duration":"01:02:01","url":"/play/19033077.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA3MTEvNjUwNDllMmQ1YzVjMTBlZWRiYjYwNDQxOGY1NmI5YzguanBn.cache","vod_id":19168041,"title":"超过性朋友,低于情人。 性100%在我的脑海里。与淫荡的女孩享受性爱!水木弥生 弥生みづき S-Cute","lastmod":"2026-07-13","duration":"02:43:13","url":"/play/19168041.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvY2IxODJmODRlNzc1ZDkwMTYxMjIzYmEyOTJkY2RhZTIuanBn.cache","vod_id":19150838,"title":"Vidéo érotique amateur (NTR) : La personne apparaissant dans la vidéo érotique amateur qui m’a été envoyée par erreur par un ami est ma mère. ROE-448","lastmod":"2026-03-30","duration":"01:59:40","url":"/play/19150838.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvNDEzYWU5NDI1Y2Y5MDAxMDBkZDk3NWQwMmU2NmE5MDcuanBn.cache","vod_id":19155311,"title":"Une mère, dans la fleur de l'âge mais longtemps absente de la vie de son mari, hésitait à poser la main sur son fils, mais, à sa grande surprise, elle posa la main sur le pénis de l'ami de son fils.","lastmod":"2026-04-27","duration":"03:07:55","url":"/play/19155311.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYmU1ZGQyMGMxZmUwNTE5NTM4NDg5ZTcyNmViYjliYmQuanBn.cache","vod_id":18987690,"title":"[Sous-titres chinois] BF-695 Des années plus tard, de retour dans ma ville natale, j'ai découvert que mon amour d'enfance, qui avait toujours eu une petite poitrine, était devenue une femme magnifique aux formes généreuses, et elle m'a séduit. J'ai éjaculé sur son corps sans méfiance à maintes reprises.","lastmod":"2025-12-14","duration":"01:59:37","url":"/play/18987690.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvMzJhMDk1MzNkYjI3ZjMyMTczY2EwYjkzOTZkYzNkZjMuanBn.cache","vod_id":19162581,"title":"Le petit ami d'une fille aux gros seins, Kato Taka, l'a possédée, l'a amenée à l'orgasme puis l'a pénétrée.","lastmod":"2026-07-11","duration":"23:59","url":"/play/19162581.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvNTlhZjNjNDg4NzhiOWM4NTY1NjU3Zjg3MDUxN2RkZjUuanBn.cache","vod_id":19159365,"title":"Les jours les plus chauds de l'année… et pendant le camp d'entraînement d'été, je me suis retrouvée à partager une chambre avec les filles à forte poitrine de l'auberge ! Sans soutien-gorge, impossible de résister à leur poitrine qui déborde… Yuuki Toa MOODYZ","lastmod":"2026-05-22","duration":"02:27:31","url":"/play/19159365.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMGY4NjRiODA5ZGJlMzI2YmNiYjI2YzU1YTNhN2I1OTYuanBn.cache","vod_id":19010026,"title":"PRED205 L'amie d'une salope est aussi une salope ! Une vendeuse de lingerie haut de gamme d'une beauté époustouflante apparaît dans une vidéo pour adultes ! Mizuki Sakura.","lastmod":"2025-03-24","duration":"01:58:07","url":"/play/19010026.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNWM1MzgyZWMzOWJjY2EzYTRlMDE0NDM4M2ZlNzYxZmQuanBn.cache","vod_id":19008662,"title":"NASH136 a agressé sexuellement une femme mariée. Je suis venue ici pour avoir des relations sexuelles. J'abandonne celle que je suis devenue, la seule personne que mon mari ignore…","lastmod":"2025-03-24","duration":"02:20:50","url":"/play/19008662.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMTUvZmNjMmUyNGNkZTJmZThjZDk4NTY5OWE4MTFjZTRjMWYuanBn.cache","vod_id":19133831,"title":"Indigo White - Un cadeau de Saint-Valentin de ma copine","lastmod":"2025-12-16","duration":"13:29","url":"/play/19133831.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA1MjQvMzYxOTAwMTViNzQ4MGIyZGMzNmIzYWRlYzM5ZDQzOGYuanBn.cache","vod_id":19034929,"title":"FPRE029 Ma copine est voluptueuse, a une forte poitrine et est adorable comme tout… Elle est entourée de tous les garçons du club de volley-ball…","lastmod":"2025-05-24","duration":"02:08:01","url":"/play/19034929.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZGY5ZTFjYWNmMDk3NTEwYWRmYTZmZjAyNmU0YjE2MjYuanBn.cache","vod_id":19021111,"title":"Les sœurs aînées de mon amie, qui ont de gros seins.","lastmod":"2025-03-24","duration":"01:06:26","url":"/play/19021111.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly9pYy4xNTUyNTAyMTQudG9wLzIwMjYwMjIwL1N3VFVhQUdwLzEuanBn.cache","vod_id":19144785,"title":"Deux jeunes hommes qui se retrouvent dans une chambre d'hôtel en tenue de soirée n'ont certainement pas le même charme qu'un homme mûr en costume.","lastmod":"2026-02-22","duration":"13:22","url":"/play/19144785.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvOWQ5MTg0MjM0ZTY1MjljN2JmMTZkY2Y2MDU0NjJhYmMuanBn.cache","vod_id":19149503,"title":"[Diffusion en continu uniquement] Si elle m'invitait vraiment comme ça, je serais même prêt à coucher avec la femme mariée de mon ami, Mina Kitano SKMN-015","lastmod":"2026-03-21","duration":"01:33:37","url":"/play/19149503.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNzg5Y2I3YjA5Y2I1NjE4NjhjZTNmY2I5ODQ3N2FiZjQuanBn.cache","vod_id":18998517,"title":"Heyzo-2059 Créé par la sœur cadette de ma copine et moi-même — Sakuragi Rino 1","lastmod":"2025-12-14","duration":"01:05:11","url":"/play/18998517.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYmQ0YWRjY2E0NGJiYzQxMjUyYTIyZDhkODE0ZDQxZWQuanBn.cache","vod_id":18961192,"title":"[Sous-titres chinois] ATID-544 C'est l'enfer le plus jouissif au monde. Pendant le voyage de trois jours de mes parents, mes amies d'enfance et mes sœurs ont partagé mon corps.","lastmod":"2025-03-22","duration":"03:04:50","url":"/play/18961192.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZWFlN2QwNmQyOTQ1ZTg0ODhkZTExM2NjNGJmYTk4YmQuanBn.cache","vod_id":18966578,"title":"[Sous-titres chinois] MIAA-774 J'ai eu ma première petite amie, alors j'ai décidé de m'entraîner au sexe et à l'éjaculation à l'intérieur d'elle avec mon amie d'enfance, Arai Rima.","lastmod":"2025-12-14","duration":"01:58:27","url":"/play/18966578.html"}]},
videoTitle: 'J'ai eu une dispute avec mon copain en pleine nuit, et je me suis sentie perdue sans mon smartphone.',
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=/`;
}
};
}