Die Freundin meiner Frau möchte plötzlich das Original Yuri Sasahara ALDN-400-C haben.","lastmod":"2026-07-11","duration":"01:57:16","url":"/play/19164682.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMmNmYzRiN2NjOWViMTJhZGIzZWUyZDQ4ZmIwN2M2OWEuanBn.cache","vod_id":19004488,"title":"JUQ-410-C Exklusive 3. Auflage!! Ein üppiger Busen von über 100 cm wird Sie absolut umhauen!! Nachdem meine Freundin mich verlassen hatte, ging ich am helllichten Tag aus.","lastmod":"2025-03-23","duration":"02:24:54","url":"/play/19004488.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTExMjQvMWE5NWZjYmM5NzRlOGQxYWQ4YThlYjk3NWM3NWUyMWUuanBn.cache","vod_id":19064105,"title":"Als ich die Gelegenheit nutzte, den Penis einer verheirateten Frau, die um eine Massage bat, mit einem Aphrodisiakum zu behandeln, wurde sie so geil, dass... (Unbekannter Schauspieler SCOP_849)","lastmod":"2025-12-13","duration":"02:31:09","url":"/play/19064105.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNThmODEyZTQ2NjM1NGU2NzJlNTYxOGEyY2M3NThhNDkuanBn.cache","vod_id":19007514,"title":"HBAD494: Mori Hotaru, eine mit Sperma bedeckte Mutter, wurde von den Freunden ihres Sohnes als Sexspielzeug benutzt.","lastmod":"2025-03-24","duration":"01:59:41","url":"/play/19007514.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZmM3YWNjMDlmMDJlOWRhODRmZTZmOGFkNzgwYjJhZTUuanBn.cache","vod_id":18977153,"title":"Ich beneide diesen älteren Mann wirklich um seine wunderschöne Freundin. Er müsste jeden Tag mit ihr schlafen, um seine Begierde zu befriedigen, aber leider ist sein Penis unzuverlässig; selbst indisches Kräuteröl hilft nicht, und er kommt schon nach wenigen Minuten.","lastmod":"2025-12-14","duration":"00:43:43","url":"/play/18977153.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEwMDgvOWMzZjkxYWU2MTViOWUwY2M1YzFhMmNmN2M2ODMyMGYuanBn.cache","vod_id":19056737,"title":"Meine Freundin, Okamoto Riri, hat riesige H-Körbchen und ist überempfindlich; sie kann den Penissen anderer Männer nicht widerstehen. Okamoto Riri HBAD698","lastmod":"2025-10-07","duration":"02:02:46","url":"/play/19056737.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTExMjQvMTZiNmNjZmY5Y2NiNTQzMDFiN2YzYWI2MmRlOTA5OTAuanBn.cache","vod_id":19064135,"title":"Suggestive Gehirnwäsche 04: Mehrstufige Gehirnwäsche glamouröser Subkultur-Amateure. Masochistisches Training wird fortgesetzt. [Unbekannter Schauspieler MUKC_068]","lastmod":"2025-12-14","duration":"02:43:50","url":"/play/19064135.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvOThmM2Y3MDZjMGJiOWM5YzcxY2QwMzU4MDNkMzg1NjguanBn.cache","vod_id":18934303,"title":"[Chinesische Untertitel] DOCP-171 Versuchung unter den Brüsten 2: Ich schaue die Schwester meines Freundes mit sexy Augen an","lastmod":"2025-03-22","duration":"03:20:58","url":"/play/18934303.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvNTBmMjllMzRmZDFiOGU3ZTk1M2E3YjA4NDAwMDBhMWQuanBn.cache","vod_id":19151298,"title":"Matsumoto Ichikas 30 Styles: Die ultimative Göttin der Reiwa-Ära, ein teuflischer Po-Freak, präsentiert 30 obszöne Po-Cosplays. MIDA-506","lastmod":"2026-04-02","duration":"02:31:01","url":"/play/19151298.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMmQxMjliYTQxNmIyZTRlYWEwMzQ4MmIxMzk5ZTdjZTkuanBn.cache","vod_id":18956649,"title":"Eine bezaubernde junge Frau in High Heels präsentiert sich in einem Livestream. Ihre Gesichtsausdrücke sind so verführerisch, dass sie die Augen schließt und ihren männlichen Bewunderern „Daddy“ zuruft, während sie Requisiten benutzt und die Lust und Stimulation genießt. Ein Vibrator wird in ihre Vagina eingeführt und regt die Produktion von Vaginalflüssigkeit an.","lastmod":"2025-03-22","duration":"01:33:39","url":"/play/18956649.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEwMjQvMmY3Mzk4MGQzN2E4NDdlMGFmYjljNjcwOTdlZjE2MDYuanBn.cache","vod_id":19059323,"title":"„Ich kann nicht heiraten.“ Meine Freundin hat von meinen Pornofilmen erfahren, deshalb habe ich die Verlobung gelöst. Eine Amateurin mit Körbchengröße I wurde Pornodarstellerin. Sasamoto Yu FTAV_005","lastmod":"2025-10-23","duration":"03:13:15","url":"/play/19059323.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvMTA4OWIxZTU2ZTgzYzJmNTE1MDNkZWNlZmE1MTZkMGMuanBn.cache","vod_id":19160758,"title":"NTR: Vorhochzeits-Wiedersehen – Mein geliebter Verlobter wurde von seinem Ex-Freund, der zwar einen furchtbaren Charakter, aber ein fantastisches Sexleben hatte, zu einem Fremdgeh-Video gezwungen. RARA S-Klasse Amateur.","lastmod":"2026-05-30","duration":"02:03:24","url":"/play/19160758.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYWFhMTlhNGMxMzg0ZGEyMzBhZDAyNjQyNDZmYzlkOTguanBn.cache","vod_id":19009137,"title":"Während meines Krankenhausaufenthalts (SCOP563), vernachlässigt von meiner Freundin, konnte ich nur heimlich masturbieren. Eine hübsche Krankenschwester bemerkte die Geräusche und entdeckte meine Aktivitäten, und wir trieben etwas Unanständiges zusammen! 5.","lastmod":"2025-03-24","duration":"02:29:57","url":"/play/19009137.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA1MjcvMzgxMDMzNDRkNGRmOTUzZWIwZTRlMTlmMTAzMjI4M2QuanBn.cache","vod_id":19035388,"title":"HBAD685 Eine vollbusige Frau verführte heimlich meinen Freund, um seine sexuellen Wünsche zu befriedigen.","lastmod":"2025-05-27","duration":"02:01:30","url":"/play/19035388.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNWJhZTkwZDQ4Y2U3YTU4ZjNjOTVlNmU0OTJhYjZkMjAuanBn.cache","vod_id":18962401,"title":"PIYO-164 Amateur-Fans aufgepasst! Warum ist dieses Mädchen so still? „Ich will kommen…“ Soras erster AV-Dreh.","lastmod":"2025-03-22","duration":"03:05:06","url":"/play/18962401.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvY2UxNGU5YjFmNTRmZjBjMzEwODM5NjE2ZTM1YTUzOTQuanBn.cache","vod_id":18988471,"title":"HONE-247 Brustpresssex: Ich war verletzt und konnte mich nicht bewegen, also bat ich die Freundin meiner Mutter, mir bei der Befriedigung meiner sexuellen Bedürfnisse zu helfen. Sie gab mir einen inneren Orgasmus, Horikiri Kyoka.","lastmod":"2025-03-23","duration":"01:39:27","url":"/play/18988471.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvYWFhMGU1OGQ4YmQyYzdjYmQzNTg0NWEyZjQ0ZGEyNWEuanBn.cache","vod_id":19157337,"title":"Paco Shooting Nr. 128: Die sinnliche, vollbusige Kaho-chan (Körbchengröße H) verdient sich auf einer Abschlussfahrt mit ihren Freundinnen etwas Taschengeld. Erster Stern","lastmod":"2026-05-09","duration":"01:25:40","url":"/play/19157337.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMTMvYTI2ZTdkZGQ5OTkwOWRlYTYzNmE4NDhiZTg1ZTYxYjYuanBn.cache","vod_id":19065387,"title":"Eine Ehefrau, außer sich vor Wut darüber, dass ihr Mann von der Freundin ihrer Mutter betrogen wurde, betrog daraufhin den Mann der Freundin ihrer Mutter! (Sasaki Aki NTR_031)","lastmod":"2025-12-14","duration":"01:30:19","url":"/play/19065387.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvOTk5NGQ3ODUxOWY5OGUyNGQyZWI4MzkwZTM0M2Q0ZDMuanBn.cache","vod_id":18941651,"title":"我最好的肛门他妈的真正的100%全部分-MYBESTANALFUCKREAL100%FULLPART","lastmod":"2025-03-22","duration":"00:22:16","url":"/play/18941651.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvMjM2ZTY5ODZlZmY5YjYwZjJiMjJlYjExZDRhNmRlYTMuanBn.cache","vod_id":19141581,"title":"Danikas Hardcore-Analsex – Bevor sie mit Freunden ausgeht, genießt sie eine ausgiebige Analsex-Session, von der Vagina bis zum Po. [DanikaMori]","lastmod":"2026-02-04","duration":"15:57","url":"/play/19141581.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA3MTcvNmU0MTI4Njk1OTZkMzk0MjgwNDZmMmZiMDI5Zjk3OTguanBn.cache","vod_id":19043277,"title":"FNS018 übte Sex mit der Freundin meines besten Freundes. Ich konnte es nicht ertragen, dass meine Eichel durch ihre Unterwäsche rieb. Also lutschte ich zuerst daran und führte sie dann ein, damit es niemand bemerkte.","lastmod":"2025-07-16","duration":"02:26:52","url":"/play/19043277.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNzc2NDQyZjkwOWQ0ZjdjMzkzZWE4MmY4ZjI4MzVjZTguanBn.cache","vod_id":18923277,"title":"FC2PPV-1173084 (mit Mosaik) Wir haben schließlich unser Bestes gegeben.","lastmod":"2025-12-14","duration":"01:24:36","url":"/play/18923277.html"}]},
videoTitle: 'Eatingoutshortiii - Freund erwischt beste Freundin @isobel mit Krawatte, Ergebnis Dreier [EOShortiii]',
language: 'de',
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('Link kopiert!');
}).catch(() => {
// 降级到旧方法
document.execCommand('copy');
alert('Link kopiert!');
});
} else {
// 降级到旧方法
document.execCommand('copy');
alert('Link kopiert!');
}
}
},
// 切换布局
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=/`;
}
};
}