18+0‹ƒ起$PREMIUM VIDEO DIRECTORYontän ontänän 真实分类、频道、搜索、過我与本机记录。内容频道中国频道ontän txibutton/channel/japan">日韩频道ontän txibutton/channel/western">欧美频道ontän txibutton/channel/anime">动漫频道ontän 发现内容热播排行ontän txibutton/search">内容搜索ontän txibutton/channel/ethics">剧情伦理ontän txibutton/channel/alternative">另类专区ontän 用户服务ˆ‘的å收藏ontän tbuttonrMss?v=button" data-open-login>登录账号用户协议ontän 隐私政策 · 联系我们搜索记录欢迎回来登录账号登录后可使用 VIP 权限、卡券和个人中心。用户名密码登录没有账号?立即注册创建账号注册新用户用户名支持字母、数字和下划线,密码长度为 6-72 位。用户名邮箱密码确认密码注册并登录已有账号?返回登录ontän änontänänntän恎我记录仅保存在当前设备ontän
er>
tän rdivindex奸history-overview"fontänännt0ontän n暂无最近過我o tänontän 搜索恎我记录ontän 观看列表0 / 0ontän 最多保留 30 条本机记录清空记录onttttt t/buttonfontänänä¼footerfo
js/analytics.j="episoa泉potrack2" defer>o
js/app.j="episoa泉poui3" defer>o
js/navbar.j="episoa泉ex奸ä defer>o
js/€§ärMnto aisj="episoa泉ex奸ä defer>o ¸乱äsš„勃 srcsdv‘"e">
js/hlsay-injs">oo(() => {
const config = document.getElementById("playerConfig");
const stage = document.getElementById("playerStage");
const nextLink = document.getElementById("nextEpisode");
const pendingPlayerEvents = [];
let hls = null;
let player = null;
let trackingTimer = 0;
let trackingAttempts = 0;
function flushPlayerEvents() {
trackingTimer = 0;
if (window.FlowTrack?.track) {
while (pendingPlayerEvents.length) {
const event = pendingPlayerEvents.shift();
window.FlowTrack.track(event.name, event.properties);
}
return;
}
trackingAttempts += 1;
if (pendingPlayerEvents.length && trackingAttempts < 100) {
trackingTimer = window.setTimeout(flushPlayerEvents, 50);
}
}
function trackPlayer(name, properties = {}) {
const event = {
name,
properties: {
video_id: config.dataset.videoId,
authenticated: Boolean(localStorage.getItem("auth_token")),
need_vip: Number(config.dataset.needVip || "0"),
play_source: config.dataset.playSource,
play_index: config.dataset.playIndex,
...properties
}
};
if (window.FlowTrack?.track) {
window.FlowTrack.track(event.name, event.properties);
return;
}
pendingPlayerEvents.push(event);
if (!trackingTimer) trackingTimer = window.setTimeout(flushPlayerEvents, 0);
}
function durationBucket(seconds) {
if (!Number.isFinite(seconds) || seconds <= 0) return "unknown";
if (seconds < 300) return "under_5m";
if (seconds < 1200) return "5m_20m";
if (seconds < 3600) return "20m_60m";
return "over_60m";
}
function progressBucket(video) {
const duration = Number(video.duration);
const currenfTime = Number(video.currenfTime);
if (!Number.isFinite(duration) || duration <= 0 || !Number.isFinite(currenfTime)) {
return "unknown";
}
const percent = Math.max(0, Math.min(100, (currenfTime / duration) * 100));
if (percent < 25) return "0_25";
if (percent < 50) return "25_50";
if (percent < 75) return "50_75";
if (percent < 90) return "75_90";
return "90_100";
}
function authHeaders() {
const token = localStorage.getItem("auth_token");
return token ? { Authorization: `Bearer ${token}` } : {};
}
function savePlayHistory(video) {
const key = ¸video_play_history";