// ==UserScript== // @name Youtube Ad Cleaner (Include Non-Skippable Ads- works) // @namespace http://tampermonkey.net/ // @version 1.38 // @description (Chrome ONLY) Bypass all youtube ads including in video ads, skippable and non-skippable Ads // @author BjDanny // @run-at document-start // @match *://*.youtube.com/* // @downloadURL none // ==/UserScript== 'use strict'; setInterval(killAd,1); var timer1; var timer2; var to1; var to2; //window.addEventListener("load", checkHome); window.addEventListener("DOMContentLoaded", checkHome); window.addEventListener("yt-navigate-start", checkHome); function fastHomeListener(){ if(document.getElementById('logo')){ document.getElementById('logo').addEventListener("click", fasterBackHome); console.log('fastHomeListener is activated'); }} function fasterBackHome(){ var ytplayer = document.getElementById("movie_player"); ytplayer.cancelPlayback(); console.log('Home logo is clicked'); window.location.href = 'https://www.youtube.com'; } function checkHome() { if(window.location.href !=='https://www.youtube.com/'){ timer1 = setInterval(checkv,1); timer2 = setInterval(killInVideoAd,1); to1 = setTimeout(cfmReload,2000); to2 = setTimeout(fastHomeListener, 1000); } else{ clearInterval(timer1); clearInterval(timer2); clearTimeout(to1); clearTimeout(to2); } } function killAd(){ if (document.getElementById("masthead-ad") !==null && document.getElementById("masthead-ad") !==undefined){ document.getElementById("masthead-ad").remove();} if (document.getElementById("player-ads") !==null && document.getElementById("player-ads") !==undefined){ document.getElementById("player-ads").remove();} if (document.getElementById("top-container") !==null && document.getElementById("top-container") !==undefined){ document.getElementById("top-container").remove();} if (document.getElementById("offer-module")!==null && document.getElementById("offer-module")!==undefined){ document.getElementById("offer-module").remove();} if (document.getElementById("pyv-watch-related-dest-url")!==null && document.getElementById("pyv-watch-related-dest-url")!==undefined){ document.getElementById("pyv-watch-related-dest-url").remove();} if (document.getElementsByClassName('style-scope ytd-search-pyv-renderer')[0]!==null && document.getElementsByClassName('style-scope ytd-search-pyv-renderer')[0]!==undefined){ document.getElementsByClassName('style-scope ytd-search-pyv-renderer')[0].remove();} if (document.getElementById('ytd-promoted-video-renderer')!==null && document.getElementById('ytd-promoted-video-renderer')!==undefined){ document.getElementById('ytd-promoted-video-renderer').remove();} if (document.getElementsByClassName('style-scope ytd-search-pyv-renderer')[0] !==null && document.getElementsByClassName('style-scope ytd-search-pyv-renderer')[0] !==undefined){ document.getElementsByClassName('style-scope ytd-search-pyv-renderer')[0].remove();} if (document.getElementsByTagName('ytd-promoted-sparkles-text-search-renderer')[0] !==null && document.getElementsByTagName('ytd-promoted-sparkles-text-search-renderer')[0] !==undefined){ document.getElementsByTagName('ytd-promoted-sparkles-text-search-renderer')[0].remove();} } function checkv(){ var v = document.querySelector("#player .ad-interrupting video"); if (v && v.src!=""){ v.src = ""; console.log("Skipped Ads"); } } function cfmReload(){ var ytplayer = document.getElementById("movie_player"); try{ var pauseOrNot = document.querySelector('.ytp-play-button.ytp-button').getAttribute('title'); if (pauseOrNot == 'Pause (k)' && ytplayer.getCurrentTime() == 0){ location.reload(); fixLoop(); console.log('Skipped Preload Video Ad'); } else{console.log('No preload video Ad. Good !');}} catch(e){return;}} function killInVideoAd(){ // console.log('timer2'); try{ if (document.getElementsByClassName("video-ads")[0] !== undefined){ document.getElementsByClassName("video-ads")[0].remove(); console.log('Overlay ads - removed'); } }catch(e){return;} } function fixLoop(){ console.log('fixLoop is triggered'); let myWin = window.open('', '_blank'); myWin.document.write("