极简b站—bilibili

Minimalist B station is used to disguise B station as an article

目前為 2023-07-11 提交的版本,檢視 最新版本

// ==UserScript==
// @name         极简b站—bilibili
// @namespace    http://tampermonkey.net/
// @version      1.2.1
// @description  Minimalist B station is used to disguise B station as an article
// @author       向前
// @match         *://*.bilibili.com/*
// @run-at       document-end
// @grant        none
// @license         MIT
// @require      https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.js
// ==/UserScript==

(function () {
  var hiddenFlag = false;
  var hiddenArray = ["bili-header", "bili-header__bar", "right-container", "svg-icon", "bpx-player-sending-bar", "avatar"];
  function hideElements() {
    hiddenArray.forEach(function (item) {
      $("." + item).hide();
    });
    $(".sub-user-info").remove();
    $(".sub-reply-info").remove();
  }

  function showElements() {
    hiddenArray.forEach(function (item) {
      $("." + item).show();
    });
    $(".sub-user-info").remove();
  }
  function is() {
    if (hiddenFlag) {
      showElements();
    } else {
      hideElements();
    }
  }
  function resetDocumentStyles() {
    var resetStyleArray = [
      {
        id: "arc_toolbar_report",
        class: "sub-user-info",
        css: {
          zIndex: "9999",
          display: "flex",
          position: "fixed",
          right: "10%",
          top: "30%",
          width: "200px",
        },
      },
      {
        id: "",
        class: "video-toolbar-left",
        css: {
          flexWrap: "wrap",
          height: "500px",
        },
      },
    ];

    resetStyleArray.forEach(function (item) {
      item.id ? $("#" + item.id).css(item.css) : $("." + item.class).css(item.css);
    });
  }

  function insertCustomDiv() {
    var customDiv = $("<div>")
      .addClass("child-div")
      .text("向前")
      .css({
        zIndex: "999999999",
        position: "fixed",
        backgroundColor: "skyblue",
        right: "10%",
        top: "50%",
        transform: "translate(-50%, -50%)",
        width: "60px",
        height: "60px",
        borderRadius: "50%",
        lineHeight: "60px",
        textAlign: "center",
        color: "#ffffff",
        cursor: "pointer",
      })
      .click(function () {
        hiddenFlag = !hiddenFlag;
        is();
      });

    $("#app").append(customDiv);
  }

  function observeDOM() {
    var targetNode = document.querySelector("#app");
    var observer = new MutationObserver(function (mutationsList) {
      for (var mutation of mutationsList) {
        if (mutation.type === "childList") {
          // 检查是否有新节点插入
          var addedNodes = mutation.addedNodes;
          for (var i = 0; i < addedNodes.length; i++) {
            var addedNode = addedNodes[i];
            if (addedNode.classList && addedNode.classList.contains("child-div")) {
              // 新节点是插入元素,不做处理
              return;
            }
          }
          // DOM 更新后重新插入插入元素
          insertCustomDiv();
          resetDocumentStyles();

          // 在这里执行移除操作
          $('[title="投币(W)"]').parent().remove();
          $(".video-toolbar-right").remove();
        }
      }
    });

    var observerConfig = { childList: true, subtree: true };
    observer.observe(targetNode, observerConfig);
  }

  function waitForDOM() {
    if (document.readyState === "complete") {
      // DOM 已加载完成
      insertCustomDiv();
      resetDocumentStyles();
      observeDOM();
    } else {
      // 继续等待
      setTimeout(waitForDOM, 100);
    }
  }
  waitForDOM();

  $(window).scroll(function () {
    is();
    $("video").each(function () {
      if (!this.paused && !hiddenFlag) {
        this.pause();
      }
    });
  });
})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址