방과 후, 아름다운 소녀 H G 여신 가슴 마사지 오르가즘 인형 얼굴 큰 가슴 여대생 나기사 [이챠 L 시라이시 나기사 오로라 프로젝트 부록]","lastmod":"2026-07-11","duration":"02:31:58","url":"/play/19164921.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZjVlMDEzMjVkM2FkYmUwOTU4ZjMzZGU3YjYyNGJkNzUuanBn.cache","vod_id":18933538,"title":"MIDD-722 스도 유키코의 오르가즘: 삽입할 때마다 그녀의 질에서 액체가 뿜어져 나온다.","lastmod":"2025-12-14","duration":"01:57:11","url":"/play/18933538.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTA1MjMvZTFiMjI1ZWMwNjk1NTk2ZGNkYzA2MTZjMGRmOWYwNmQuanBn.cache","vod_id":19034761,"title":"EBWH091 초절정! 격렬한 경련! 엄청난 양의 체액이 쏟아져 나왔다! 가늘고 G컵의 가슴을 가진, 도저히 손에 넣을 수 없을 것 같은 미녀가 성적 욕망의 극치에서 마침내 폭발했다.","lastmod":"2025-05-23","duration":"01:59:47","url":"/play/19034761.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvOWVmZjkxNTNjNGNlZjYzYTk5MzA5ODYyNDI5NmUwNzQuanBn.cache","vod_id":18995632,"title":"금발 소녀는 위에서 오르가즘을 느꼈다!","lastmod":"2025-12-14","duration":"25:58","url":"/play/18995632.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNjBhOTg5ZTgzNWNmNDMxNWZmZTNjM2U2OTZjNzgzMzMuanBn.cache","vod_id":19018384,"title":"[AV 해설] 장난꾸러기 아이 때문에 오르가즘을 느낀 신부.","lastmod":"2025-03-24","duration":"14:02","url":"/play/19018384.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEyMjMvNTkzZmZhOTUzNGI4YTU3NzBkZDcyYzAwM2JkMzRhMWMuanBn.cache","vod_id":19150969,"title":"궁극의 무술 토너먼트! 세상에서 가장 강렬한 쾌감을 경험하는 자! 정신이 혼미한 글래머 미녀 vs. 경련을 일으키는, 음란한 구멍을 가진 하찮은 코스플레이어. PRIN-057","lastmod":"2026-03-31","duration":"03:35:09","url":"/play/19150969.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMjMwYTJlMTFjMDYyZTg5NjhiMTM1NTEyMTc4Y2U5M2QuanBn.cache","vod_id":18957951,"title":"PPPD-670 가슴 큰 시누이가 가슴으로 나를 계속해서 오르가즘에 이르게 했어요... 혼나는 와중에도 내 성기는 여전히 발기되어 있었어요. 줄리아","lastmod":"2025-03-22","duration":"02:25:52","url":"/play/18957951.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYzE1MWFiMDI0OThlMjlmNjY5OTI5NWNhNWIzYjhjMDguanBn.cache","vod_id":18981008,"title":"[4K]CAWD-535 저는 한 사람과만 성관계를 해봐서 오르가즘이나 사정을 경험해 본 적이 없어요! 결혼하기 전에 더 많이 배우고 싶어요... 유, 23세","lastmod":"2025-12-14","duration":"02:33:21","url":"/play/18981008.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNDJkMmI4YmY0OTc3NDI4YjM0NGIwMTNiNjdlZTY4NzguanBn.cache","vod_id":18972576,"title":"494SIKA-227 신비로운 글래머 여성이 1인칭 시점의 섹스 도중 다중 오르가즘을 경험합니다.","lastmod":"2025-12-14","duration":"00:47:25","url":"/play/18972576.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYjhiYmFiNmNhZDk2YTc0MzczZWI0YTI5NDZhYjBmYTQuanBn.cache","vod_id":19003848,"title":"SSNI-540 내추럴 3D H컵 마오 시로는 섹스 중 세 번의 강렬한 오르가즘을 경험합니다! 특별 기능: 가슴이 격렬하게 흔들리는 장면.","lastmod":"2025-03-23","duration":"01:59:17","url":"/play/19003848.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZTNhNWEwMDExNGUxMjU5NDRiYTdmNzU4N2EzYzI4NDguanBn.cache","vod_id":19014522,"title":"ARA368의 [기적의 큰 가슴] 20살 [마조히스트 미녀] 미레이 짱이 등장했습니다! 그녀가 극단에 들어간 이유는 \"생활비가 부족해서... 옷을 벗어야 했기 때문\"이라고 합니다... 가난한 형편에도 불구하고, 그녀는 부잣집 여자에게나 어울릴 만한 G컵 가슴을 자랑합니다! 살짝만 자극해도 엄청난 양의 애액을 뿜어낼 정도입니다! 그녀는 엄청나게 예민해서 온몸이 성감대입니다! 가슴이 격렬하게 흔들리는 극단원의 오르가즘에 이르는 섹스를 절대 놓치지 마세요!","lastmod":"2025-03-24","duration":"01:21:38","url":"/play/19014522.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvOWM5YjFmZWU4NDFkNmZhMjE2NDJmZDAxMWQ2ZDNkYzMuanBn.cache","vod_id":19015011,"title":"GANA2055는 정말 부드러워요. 첫 사용인데, 에비스에서 만난 여대생에게 진동기 감시를 부탁해 볼까 생각 중이에요! \"여기에 놓아도 될까요?\" 그녀는 첫 진동기에 만족해하며 기분 좋은 소리를 냈어요! 전기 진동기에 매료되어 마지막까지 행복하게 몸을 떨었어요.","lastmod":"2025-03-24","duration":"01:02:52","url":"/play/19015011.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvOTMwNmM2ZTYwYWI1YWM2NDM3MjM3NDA1ZmI0YzBkNWMuanBn.cache","vod_id":18989249,"title":"200GANA-2255 진지한 소프트코어, 첫 촬영. 1456 폭풍우로 파괴된 도시에서 초미녀 간호학과 여학생이 발견되었다! 그녀의 이야기를 들어보니 \"남자친구는 없지만 아빠는 있어요!\"라고 말했다. 현대판 육식녀인 그녀는 매우 우울해하며 \"아빠랑 하는 건 전혀 기분 좋지 않아요!\"라고 말했다. 그녀의 일과는 성인 비디오를 보고 자위하는 것이었는데, 내가 \"성인 비디오에 출연해 보는 건 어때?\"라고 제안하자...! (0002)","lastmod":"2025-03-23","duration":"01:12:16","url":"/play/18989249.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYjQ2OTY5MWI5OWI0OTgwODE1ZTc3MTA0NTliMDZiYTkuanBn.cache","vod_id":18978242,"title":"EVIS-409 사정 절정 레즈비언","lastmod":"2025-12-14","duration":"02:00:39","url":"/play/18978242.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMDFlMzIzN2Q3M2E1NDBmNGEzMGQ4ZDE5Y2M2NTI2YWEuanBn.cache","vod_id":18956183,"title":"✿오르가즘의 향연✿ 꿀 향기가 나는 부드러운 질을 가진 가장 아름답고 매혹적인 어린 소녀 ▌유아▌하얀 스타킹을 신은 섹시한 메이드가 다리를 벌리고 애널 플러그를 사용하여 극도의 쾌감과 오르가즘을 느끼며, 얼굴에는 에로틱한 정액이 넘쳐흐릅니다. 5","lastmod":"2025-03-22","duration":"00:07:58","url":"/play/18956183.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvOTJiZGFlN2ZlNWQ1MmY1ZjIwZGUzYzNkODZlMDMwNGIuanBn.cache","vod_id":18927823,"title":"FC2PPV-1285529★얼굴 전체 노출☆속편・24세 성욕 왕성 소녀 유루짱성욕 폭발하는 고성욕 소녀♥극도로 예민하여 다중 오르가즘을 경험하는♥고통스러운 비명과 함께하는 크림파이 섹스♥【개인 촬영】※보너스 보너스!","lastmod":"2025-12-14","duration":"00:55:42","url":"/play/18927823.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMTIyZTMxZGRiMGVhMmJhMTllZTM2ZGI0NDYzMzdlMjcuanBn.cache","vod_id":18973606,"title":"XVSR-113 슈퍼!! 한계를 뛰어넘다: 거대한 가슴을 가진 아사미 나가세의 150회 연속 오르가즘","lastmod":"2025-03-23","duration":"04:00:23","url":"/play/18973606.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTEwMTAvZjA2Yjc3YWI4NDhhMzE2NTczODc0MzZlZThkMmU0NWUuanBn.cache","vod_id":19057018,"title":"가슴의 곡선을 가장 잘 드러내는 S자 자세; 절정 후에도 지속적인 추삽질이 이어지는 후위 자세; 히토미, 유즈리하 카렌, 사츠키 메이 등 출연. PPBD295","lastmod":"2025-10-09","duration":"04:01:00","url":"/play/19057018.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMzJmN2E0ZjZmZjNhODg4OTk2YTQ0NzNmY2VmZTY5MWEuanBn.cache","vod_id":19012391,"title":"200GANA2276 너무 부드러워, 첫 촬영이야. 1471 이상한 옷을 입은 아름다운 소녀의 옷을 벗기자, 믿을 수 없을 정도로 부드러운 G컵 가슴이 툭 튀어나왔다. 그녀는 격렬하게 저항했지만, 질에는 커다란 얼룩이 남았다. 그녀는 가슴이 떨리는 동안 여러 번 오르가즘을 느꼈다!!","lastmod":"2025-03-24","duration":"01:07:53","url":"/play/19012391.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZGU3ZGZiNzhkMDFiZjVkMDUwZWU0NDllYzZkOGU1NjMuanBn.cache","vod_id":18986254,"title":"SIRO-4005 [첫 촬영] [풍만한 F컵] [남자친구와는 완전히 다른...] 겉보기엔 순수하고 행복해 보이는 이 소녀는 사실 엄청나게 섹시한 여자다. 남자가 그녀의 몸에 페니스를 넣기만 하면, 그녀는 끊임없이 오르가즘을 느낀다.","lastmod":"2025-12-14","duration":"01:06:54","url":"/play/18986254.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvOWZhNmRiYzYyNGU4YTM1YmY3ZmVmZTQyNjE4OGEwMGIuanBn.cache","vod_id":18954783,"title":"Douyin 스트리머 [A Tyrant Beast]와 여러 스트리머들이 개인 사진을 포함한 이중 시점에서 라이브 스트리밍을 한다. 요즘 스트리머들은 정말 즐길 줄 안다. 형의 시점은 정말 최고다(30).","lastmod":"2025-03-22","duration":"00:05:27","url":"/play/18954783.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMzQ5NGRjYzYxMGQ3MjEwOGQyNWI2YjY0MWE5MDA4OGYuanBn.cache","vod_id":18933010,"title":"HUNTA-130 - 부모님이 안 계셔서 여동생이 하룻밤 묵으러 우리 집에 왔어요. 그런데 방을 같이 썼더니 방이 너무 좁았어요.","lastmod":"2025-12-14","duration":"04:02:35","url":"/play/18933010.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZGI5YmZkYzUyMGE0NmQzM2QxZTc4NTA5OTFlZWU5YjguanBn.cache","vod_id":18931371,"title":"NHDTB-356_B 내추럴 클라이맥스 신년 스페셜 성인식 음란 크림 파이 SP P","lastmod":"2025-12-14","duration":"02:03:30","url":"/play/18931371.html"}]},
videoTitle: '그녀는 거친 쓰리섬에서 오르가즘을 느끼는 데 정말 어려움을 겪어요 - 그녀는 정말 힘들고 거친...',
language: 'ko',
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('링크 복사 완료!');
}).catch(() => {
// 降级到旧方法
document.execCommand('copy');
alert('링크 복사 완료!');
});
} else {
// 降级到旧方法
document.execCommand('copy');
alert('링크 복사 완료!');
}
}
},
// 切换布局
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=/`;
}
};
}