// ==UserScript== // @name KissAnime Anti-Adblock Blocker // @namespace userscripts.org/user/swyter // @description Not even the people from Easylist seem to fight this site anymore, someone had to try as this looks popular enough. *sigh* // @match http://kissanime.com/* // @version 3.3 // @grant none // @run-at document-end // == // @contributionURL https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=swyterzone%40gmail%2ecom&item_number=swydonations¤cy_code=EUR // @contributionAmount $2 // @downloadURL none // ==/UserScript== /* run this just on the parent page, not in sub-frames */ if (window.parent !== window) throw "stop execution"; /* get rid of timeouts right away, they aren't used for anything useful */ console.log("Started KissAnime Anti-Adblock Blocker, waiting for the DOM to load..."); window.setTimeout=undefined; function when_external_loaded() { console.log("DOM loaded, processing stuff..."); window.setTimeout=undefined; /* remove the anti-adblock script */ if(thing=document.querySelector("#adCheck3 + script")) { thing.parentElement.removeChild(thing); } /* get rid of the cruft */ for(elem in cruft=document.querySelectorAll("iframe[src*='ad'], .divCloseBut, .clear2, div[style*='!important']")) { if(typeof cruft[elem]==="object") { console.log("removing cruft: ", cruft[elem]); cruft[elem].parentElement.removeChild(cruft[elem]); } } } /* inject this cleaning function right in the page */ window.document.head.appendChild( inject_fn = document.createElement("script") ); inject_fn.innerHTML = when_external_loaded.toString() + ";when_external_loaded()"; /* fix upper links positioning after removing the cruft and styling rules for my custom lightsoff lampshade */ window.document.head.appendChild( inject_st = document.createElement("style") ); inject_st.innerHTML = "a#qualityChoose{display:block;} .swylightsoff{right:0;width:100%;height:100%;top:0;left:0;position:fixed;background:rgba(0,0,0,0.96);} #divContentVideo{z-index:999;} #switch{z-index:auto;}"; /* make the lights off button work */ document.getElementById("switch").addEventListener("click",function(e) { lights_off = document.querySelector('.swylightsoff'); if(!lights_off) { console.log("Lights off"); window.document.getElementById("switch").appendChild( inject_lo = document.createElement("div") ); inject_lo.classList.add("swylightsoff"); } else { console.log("Lights on"); lights_off.parentElement.removeChild(lights_off); } })