Problem:I have included the following in my <head>
tag (Google AdSense). Now, I'm looking for a way to disable this line via JavaScript:
<script type="text/javascript" src="https://domain.tld/javascript-file.js"></script>
Using CSS (e.g.,
display: none
) doesn't work because the code will still be executed regardless.If this external JS defines some functionality, I want to use external JS to disable this line so that it won't be executed.
Solution:Write the following code before the <script>
tag to remove the specific script tag before it executes:
window.addEventListener("load", function() { var scriptTags = document.getElementsByTagName('script'); for (let idx = scriptTags.length - 1; idx >= 0; idx--) { if (scriptTags[idx].src == "https://domain.tld/javascript-file.js") { var parent = scriptTags[idx].parentNode; if (parent) parent.removeChild(scriptTags[idx]); } } });
Explanation:This function only works if the script tag is part of the document structure and hasn’t run yet. Clearly, once the script has executed, it can no longer be removed.