我为一个网站创建了一个 Greasemonkey 脚本。脚本所做的是在页面末尾添加一个 div。
document.body.insertBefore(myDiv, document.body.firstChild);
但是现在该网站为 google-ads 添加了 iframe,结果我的 div 也出现在 iframe 中,这不是我想要的。
如何停止影响 iframe 的脚本?
我为一个网站创建了一个 Greasemonkey 脚本。脚本所做的是在页面末尾添加一个 div。
document.body.insertBefore(myDiv, document.body.firstChild);
但是现在该网站为 google-ads 添加了 iframe,结果我的 div 也出现在 iframe 中,这不是我想要的。
如何停止影响 iframe 的脚本?
我把它放在脚本的顶部以避免在框架或 iframe 上运行:
if (window.top != window.self) //don't run on frames or iframes
return;
Greasemonkey 现在支持该@noframes
指令(由 Tampermonkey 和 Scriptish 长期支持)。
使用它可以更清晰地阻止 iframe 中的操作。
不幸的是,npdoty 的回答现在会在 Firefox 的浏览器控制台中触发警告:
警告:在函数之外使用 return 已被弃用,并且可能会导致 Greasemonkey 的未来版本出现故障。