enbita tvflix markblock

enbita tvflix markblock script

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Greasemonkey 油猴子Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Userscripts ,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         enbita tvflix markblock
// @namespace    enbita tvflix markblock
// @version      1.0
// @description  enbita tvflix markblock script
// @author       You
// @match        *://player.bunny-frame.online/*
// @grant        GM_addStyle
// @license MIT
// ==/UserScript==

GM_addStyle(`
  /* 모자이크 기본 스타일 */
  .watermark-blur {
    position: absolute;
    z-index: 9999;
    pointer-events: none;
    display: none; /* 기본적으로 숨김 */
  }
`);

(function() {
    'use strict';

    function applyBlurOverlay(video) {
      if (!video) return;

      let blurDiv = document.createElement('div');
      blurDiv.className = "watermark-blur";
      video.parentElement.appendChild(blurDiv); // 동영상 컨테이너에 추가


      function updateOverlay() {
        let rect = video.getBoundingClientRect();
        // 동영상 컨테이너 기준 상대적 위치 계산
        let videoWidth = video.clientWidth;
        let videoHeight = video.clientHeight;
        let add = (rect.width - (videoHeight *16/9)) / 2

        // 전체화면 감지
        let isFullscreen = document.fullscreenElement === video.parentElement;

        blurDiv.style.position = "absolute";

        if (isFullscreen) {
            blurDiv.style.backdropFilter = "blur(7px)";
        } else {
            blurDiv.style.backdropFilter = "blur(4px)";
        }

        blurDiv.style.top = videoHeight * 0.015 + "px";
        blurDiv.style.right = (videoWidth * 0.015) + add + "px";

        blurDiv.style.width = videoWidth * 0.057 + "px"; // 크기 조절
        blurDiv.style.height = videoHeight * 0.09 + "px";
      }


      function checkVideoTime() {
          if (video.currentTime < 181) {
              // 3분 1초 미만: 모자이크 표시
              blurDiv.style.display = "block";
              updateOverlay();
          } else {
              // 3분 1초 이상일 때: 일시정지 상태면 그대로 유지, 재생 중이면 숨김
              if (!video.paused) {
                  blurDiv.style.display = "none";
              }
          }
      }


      updateOverlay(); // 초기 위치 설정

      // 이벤트 리스너 추가
      window.addEventListener("resize", updateOverlay);
      document.addEventListener("fullscreenchange", updateOverlay);
      video.addEventListener("loadedmetadata", updateOverlay);
      video.addEventListener("timeupdate", checkVideoTime); // 현재 시간 감지
      video.addEventListener("pause", checkVideoTime); // 일시정지 감지

    }

    function waitForVideo() {
        let video = document.querySelector("video");
        if (video) {
            applyBlurOverlay(video);
        } else {
            setTimeout(waitForVideo, 50);
        }
    }

    waitForVideo();
})();