Une machine à lécher amateur improbable, 50 éjaculations intenses et consécutives ! La sélection ultime de sexe oral de beautés de classe S et d'amateurs de classe S","lastmod":"2026-07-11","duration":"04:00:34","url":"/play/19154164.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA3MTcvYjZmY2VmODU5YWIyZGEzY2Q5MzBlNDViOWFmY2U1NTMuanBn.cache","vod_id":19084377,"title":"Belle jeune femme aux cheveux courts à la piscine de la villa","lastmod":"2025-07-16","duration":"32:23","url":"/play/19084377.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvYzI3MDliNjNlZmRiYjE3ZDExNDZhYTU0MWQ3ODYzZjEuanBn.cache","vod_id":18966063,"title":"SDNM-353 Une beauté miraculeuse à huit têtes, mesurant 1,71 m, également mannequin gravure, a 41 ans. Chapitre final : Elle a menti à son mari et à ses enfants pour venir ici. Aujourd’hui, elle veut juste oublier toutes les corvées quotidiennes… Un séjour extraconjugal dans une source thermale, ponctué d’orgies et d’orgasmes intenses. Shirakawa Hanayoshi","lastmod":"2025-03-28","duration":"02:24:47","url":"/play/18966063.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA0MTcvZTk4OWVkOWFiNmU0Yzg2YTAxMGQwNDI4MDUwODQxNzUuanBn.cache","vod_id":19069965,"title":"Jeune femme de grande valeur en minijupe, baisers français, sexe oral, flirt, pénétration anale, baise vigoureuse, gémissements et halètements.","lastmod":"2025-04-17","duration":"38:05","url":"/play/19069965.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvNjczZGI4MTA2NGMzNjViZDZlYjdiOThjZjY4MjFiYWYuanBn.cache","vod_id":19143885,"title":"Quatrième apparition de ssrpeachellie : patronne en minijupe et bas noirs, léchage séducteur, sexe oral, chevauchée, combat intense et BDSM ultime.","lastmod":"2026-05-17","duration":"27:26","url":"/play/19143885.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvYTFjNTRiNWU4Nzg4ZjAwYzc0M2EyOTY1ZWQwYjc3YTkuanBn.cache","vod_id":19010746,"title":"#PremièreFleurDeCerisier #Kawaii #BelleAncreFlirting","lastmod":"2025-03-28","duration":"27:41","url":"/play/19010746.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA5MTUvZDFhZjM3YjdhYjY4MGNkOGFiOGQxMWYwYzk5NzAxM2QuanBn.cache","vod_id":19095651,"title":"[Absolument subjectif] Un an d'attente pour un rendez-vous ! Une femme d'une beauté époustouflante, longiligne et aux jambes interminables, subit un soin masculin ultra-premium qui la vide de toute son énergie. Akari Tsumugi IPZZ451","lastmod":"2025-09-14","duration":"02:17:02","url":"/play/19095651.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA3MTAvMDQ4YTkyN2M0YzJiZGVlMmU1N2FkYzA1MzY3MTY4OTUuanBn.cache","vod_id":19154442,"title":"Cette étudiante est vraiment superbe : exquise, mince, avec un teint clair et des bas noirs sexy. Elle écarte les jambes avec force et se laisse aller aux mouvements de va-et-vient, gémissant de plaisir.","lastmod":"2026-07-11","duration":"15:54","url":"/play/19154442.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly9zYnp5dHBpbWc0LmNvbTozNTE5L3VwbG9hZC92b2QvMjAyNjAyMjMtMS8yY2FhZjk3MGUxMWQ3ZDBjMzhlMWQ2NTgxNmFhNTFhOS5qcGc=.cache","vod_id":19126496,"title":"Une vidéo divulguée révèle la sextape de la belle Li Leqi, à la peau claire, et de son riche petit ami, tournée dans un hôtel.","lastmod":"2026-02-23","duration":"19:33","url":"/play/19126496.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA3MjAvZjdjNDJiZTZjOTA1N2U2ODdiZWQwYzgzYzBhOTliYjkuanBn.cache","vod_id":19085015,"title":"Sexe oral en voiture avec une beauté de premier ordre aux techniques orales expertes, suçant et léchant le pénis.","lastmod":"2025-07-19","duration":"13:07","url":"/play/19085015.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZGY4ZWQ0NWVjMWQ3MTU1NGYzZWFkZTRmYjZjZWIxZTUuanBn.cache","vod_id":19022581,"title":"Vivian, qui adore les bas, se masturbe la nuit sur son balcon extérieur en bas noirs, mais insatisfaite, elle retourne dans sa chambre et fait l'amour avec lui intensément, éjaculant sur ses belles jambes gainées de bas noirs !","lastmod":"2025-03-29","duration":"18:22","url":"/play/19022581.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvOGFiYThjODk4ZWY3NzM1OWJmNGZhY2Q2ZjNhNjNkNDQuanBn.cache","vod_id":18983299,"title":"IPZ-912 Désir infini, plaisir sans fin, orgie forcée non censurée, beauté contre bête sexuelle, frénésie non-stop pendant 2 heures et 10 minutes, « Jusqu'à ce que je te vide de toute substance… » - Fuyutsuki Kaede","lastmod":"2025-03-28","duration":"02:50:24","url":"/play/18983299.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvYmQ3ZTkxZjdlYzkxMTkxNDI1MjAwMTkwNDc3ZWQwZjEuanBn.cache","vod_id":19140870,"title":"Une jeune femme en bas blancs et crêpes érotiques est pénétrée sans relâche par un pénis, tout en proférant constamment des remarques obscènes.","lastmod":"2026-05-03","duration":"40:40","url":"/play/19140870.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvYjI3MzIwZmEyMmUyODQxNjRjNjc5YjU4YmI4NTgwZjUuanBn.cache","vod_id":19128892,"title":"La femme mûre par excellence possède des jambes fines et magnifiques, une silhouette délicate et un vagin doux, chaud et sucré qui vous fera flancher les jambes pendant l'acte sexuel.","lastmod":"2026-03-06","duration":"54:15","url":"/play/19128892.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvOTQyMmYwYWE0YzA4MWQ0NDVkOWI2ZjVjZTBkYzc1YTAuanBn.cache","vod_id":19142091,"title":"Après son travail, M. J a eu des relations sexuelles avec une belle hôtesse de l'air, en lui montrant son visage.","lastmod":"2026-05-09","duration":"09:42","url":"/play/19142091.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvNDNkMWExY2JiMmY4OGMxM2QxMzk4Y2FlMjAwN2Y2YmIuanBn.cache","vod_id":18991004,"title":"Des jolies filles filmées en secret","lastmod":"2025-03-28","duration":"42:24","url":"/play/18991004.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvN2JiNzIzNTgzOGY3ZTg0ZTNhNGYzNzlmZjZlNTcxZTMuanBn.cache","vod_id":19058253,"title":"300MAAN507 Une « sommelière du pénis » autoproclamée parcourt le monde en dégustant des pénis ! Polyglotte, elle utilise son talent lingual exceptionnel pour aspirer profondément le pénis dans sa gorge, pratiquant une fellation profonde et savourant chaque goutte ! Elle remue ses fesses rebondies et généreuses tout en nous offrant des positions de face-sitting et de cowgirl ultimes ! Cette beauté de renommée mondiale reçoit des éjaculations faciales et une double éjaculation !","lastmod":"2025-03-29","duration":"01:14:56","url":"/play/19058253.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvOTYzMGVkZDcyN2U3ZmMyMTcyMTMwOWE3YzE5MDQ5ZmIuanBn.cache","vod_id":19145717,"title":"Wei Qiaoan, une étudiante internationale belle et riche, a eu une relation sexuelle passionnée avec son petit ami blanc, doté d'un pénis surdimensionné, dans un hôtel de luxe. Sa silhouette menue sera-t-elle endommagée par un tel attribut ?","lastmod":"2026-05-26","duration":"08:20","url":"/play/19145717.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA4MTYvYzQ2ZThlYzgyYTJmNmU0Yjg3OTAxNzAwZDdkMWRmNDkuanBn.cache","vod_id":19090032,"title":"Une femme d'une beauté époustouflante s'est récemment lancée dans l'industrie du divertissement pour adultes, mettant en valeur ses bas noirs sexy et ses longues jambes à travers des séances de masturbation. On l'a vue utiliser d'étranges accessoires pour se pénétrer, les yeux révulsés de plaisir. Quelle salope !","lastmod":"2025-08-15","duration":"01:45:51","url":"/play/19090032.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzEvZmI0MGU5Yzc3ZjE2ZDhhZmI5ZTUxY2UyNWNjODRiZDEuanBn.cache","vod_id":18993235,"title":"Beauté de Zhang Jiba modèle 3D","lastmod":"2025-03-28","duration":"10:47","url":"/play/18993235.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvZWViOTMwMTc2OTZmYWU4OWI1NzZkNjQ1YTU4OGQ0ZjEuanBn.cache","vod_id":19137433,"title":"Une jeune femme aux seins généreux (bonnet D) et au visage angélique est soumise à un entraînement intense par un riche héritier de la deuxième génération. Quel plaisir de se faire tripoter et baiser ces seins opulents !","lastmod":"2026-04-17","duration":"04:13","url":"/play/19137433.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMDQxM2FlYmZjMzNlNzMzNTg3M2U2YmJmOWViMTlmNmYuanBn.cache","vod_id":19123902,"title":"Les secrets d'un couple ont fuité : les selfies sexuels quotidiens de Wang Xintong, une beauté de Huizhou qui ressemble un peu à Jing Tian, et de son riche petit ami ont fuité, révélant que le visage de Wang Xintong était couvert de sperme.","lastmod":"2026-02-11","duration":"21:59","url":"/play/19123902.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA0MTEvYWUyMTZkYWNhNzU3NjEzZGQyZDI1YmMzZmM3MTIxMmYuanBn.cache","vod_id":19069253,"title":"Je me suis saoulé à la soirée de bienvenue des nouveaux employés et Akari Tsumugi, la magnifique réceptionniste de l'entreprise, m'a raccompagné. J'étais complètement vidé toute la nuit. Akari Tsumugi IPX-904-C.","lastmod":"2025-04-11","duration":"01:51:46","url":"/play/19069253.html"}]},
videoTitle: 'Jolie jeune fille en minijupe JK dévoilant ses belles jambes et ses bas blancs.',
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=/`;
}
};
}