如何在 Greasemonkey 或 Tampermonkey 中排除 iframe?
我为一个网站创建了一个 Greasemonkey 脚本。该脚本的作用是在页面末尾添加一个 div。
document.body.insertBefore(myDiv, document.body.firstChild);
但是现在该网站为 google-ads 添加了一个 iframe,结果我的 div 也出现在 iframe 中,这不是我想要的。
如何阻止脚本影响 iframe?
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?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我将其放在脚本的顶部以避免在框架或 iframe 上运行:
I put this at the top of my scripts to avoid running on frames or iframes:
Greasemonkey 现在支持
@noframes
指令(长期受 Tampermonkey 和 Scriptish 支持)。使用它可以更干净地阻止 iframe 中的操作。
不幸的是,npdoty 的回答现在将在 Firefox 浏览器控制台中触发警告:
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: