I have created a Greasemonkey script for a website. What the script does is adding a div at the end of the page.
document.body.insertBefore(myDiv, document.body.firstChild);
But now the site adds an iframe for google-ads, as a result my div appears in the iframe too, which is not what I want.
How can I stop the script affecting iframes?
I put this at the top of my scripts to avoid running on frames or iframes:
if (window.top != window.self) //don't run on frames or iframes
return;
Greasemonkey now supports the @noframes
directive (long supported by Tampermonkey and Scriptish).
Use that for a cleaner way to block operation in iframes.
Unfortunately, npdoty's answer will now trigger a warning in Firefox's browser console:
Warning: use of return outside of functions is deprecated and may cause failures in future versions of Greasemonkey.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With