// ==UserScript== // @name YouTube Ad any time Skipper // @namespace http://tampermonkey.net/ // @version 1.0 // @description いつでもyoutubeの広告をスキップすることができます。 // @description:zh-cn 您可以随时跳过 Youtube 广告。 // @description:en Any time be able to press youtube ad skip // @author You // @match https://www.youtube.com/* // @grant none // @name:zh-CN YouTube Ad any time Skipper // @name:en YouTube Ad any time Skipper // @license MIT // @downloadURL none // ==/UserScript== (function() { 'use strict'; var skipbutton = document.querySelector("#movie_player > div.html5-video-container > video"); function handleImgClick() { skipbutton.currentTime = 60; [...document.querySelector("#movie_player > div.video-ads.ytp-ad-module").getElementsByClassName('ytp-ad-skip-button-slot')].forEach(e => e.querySelector('button')?.click()); } var classNames = ['ytp-ad-skip-ad-slot', 'ytp-ad-preview-slot','ytp-ad-preview-container']; // setIntervalを作成します。 var intervalId = setInterval(function() { for (var i = 0; i < classNames.length; i++) { var skipAdSlot = document.querySelector("#movie_player > div.video-ads.ytp-ad-module").getElementsByClassName(classNames[i])[0]; if (skipAdSlot) { var spanElement = skipAdSlot.getElementsByTagName('span')[0]; spanElement.addEventListener('click', handleImgClick); } } }, 1000); // 1秒ごとにチェックします。 // 必要に応じて、setIntervalを停止するためにclearInterval(intervalId)を呼び出すことができます。 })();