Weiblock

Block the annoying things on Weibo.

Versione datata 30/08/2021. Vedi la nuova versione l'ultima versione.

Dovrai installare un'estensione come Tampermonkey, Greasemonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Userscripts per installare questo script.

Dovrai installare un'estensione come ad esempio Tampermonkey per installare questo script.

Dovrai installare un gestore di script utente per installare questo script.

(Ho già un gestore di script utente, lasciamelo installare!)

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

(Ho già un gestore di stile utente, lasciamelo installare!)

// ==UserScript==
// @name               Weiblock
// @name:zh-CN         Weiblock
// @namespace          http://tampermonkey.net/
// @version            0.1
// @description        Block the annoying things on Weibo.
// @description:zh-CN  去除微博上烦人的东西。
// @author             lujjjh
// @include            https://weibo.com/*
// @grant              none
// @run-at             document-start
// ==/UserScript==

(function () {
  "use strict";
  const observer = new MutationObserver((mutationList, _observer) => {
    for (const mutation of mutationList) {
      if (mutation.type !== "childList") continue;
      for (let node of mutation.addedNodes) {
        if (!(node instanceof HTMLElement)) continue;
        if (node.classList.contains("Frame_right_2tQRB")) {
          // Uncheck the autoplay switch.
          node
            .querySelector(".VideoList_switch_1-TPG .woo-switch-checked")
            ?.click();
          // Show the comments by default.
          node.querySelector(".Index_tabitem_17MDI > div")?.click();
        } else if (node.classList.contains("AfterPatch_bg_34rqc")) {
          // Remove the annoying audio and popup when a video is finished.
          node.remove();
        }
      }
    }
  });

  observer.observe(document.documentElement, { childList: true, subtree: true });
})();