YouTube Ad Mutor

Mute YouTube ads

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

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

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

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

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

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

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

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

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

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

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

// ==UserScript==
// @name         YouTube Ad Mutor
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  Mute YouTube ads
// @author       eggplants
// @homepage     https://github.com/eggplants
// @match        https://*.youtube.com/*
// @grant        none
// @license      MIT
// ==/UserScript==

(function () {
  "use strict";

  var inAd = false;
  
  function clickMute() {
    document.getElementsByClassName(
      "ytp-mute-button"
    )[0].click();
  }
  function chkAd() {
    return document.getElementsByClassName(
      "ytp-ad-player-overlay-skip-or-preview"
    ).length > 0;
  }
  function chkMute() {
    return document.getElementsByClassName(
      "ytp-volume-slider-handle"
    ).length > 0;
  }
  function mutor() {

    if (chkAd && !inAd && !chkMute) {
      clickMute();
      inAd = true;
    } else if (!chkAd && inAd && chkMute) {
      clickMute();
      inAd = false;
    }
  }

  setInterval(mutor, 10);
}());