Auto Disable YouTube AutoPlay

Auto disable YouTube's AutoPlay

当前为 2023-11-19 提交的版本,查看 最新版本

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// ==UserScript==
// @name         Auto Disable YouTube AutoPlay
// @namespace    https://idunwannagotoschool.com
// @version      2.1
// @license      GNU AGPLv3
// @author       John Kai
// @description  Auto disable YouTube's AutoPlay
// @match        https://*.youtube.com/*
// @grant        none
// @run-at       context-menu
// ==/UserScript==

function stop() {
  var event = new CustomEvent("clicked");
  document.dispatchEvent(event);
}

setTimeout(() => {
var disable = setInterval(function(check) {
    if (
      ((check = document.querySelector("#autoplay-checkbox,#improved-toggle.ytd-compact-autoplay-renderer,#toggle.ytd-compact-autoplay-renderer")) &&
        check.attributes["checked"]) ||
      (check= document.querySelector('ytd-watch-flexy:not([hidden]) .ytp-autonav-toggle-button[aria-checked="true"]'))
    ) {
      check.click(console.log("desktop: autoplay disabled"));
      stop();
    } else if (
      ((check = document.querySelector("button.ytm-autonav-toggle-button-container")) &&
        check.attributes["true"]) ||
      (check = document.querySelector('button.ytm-autonav-toggle-button-container[aria-pressed="true"]'))
    ) {
      check.click(console.log("mobile: autoplay disabled"));
      stop();
    }
  }, 500);
  document.addEventListener("clicked", function(){
  clearInterval(disable);
  });
}, 2000);