有一个网页我正在为它制作一个 greasmonkey 脚本。此页面有几个 iframe。我发现他们是问题所在,但我不知道如何解决这个问题。
起初,我的脚本创建了一个带有按钮的小 div 框。通过按下按钮脚本分析网页内容并alert
在某些条件下调用。
Firefox 中的 Javascript 控制台已经向我大喊拒绝访问,document
因为我的脚本正在document.getElementByID
用于查找顶部文档的正文,其中 div 框正在附加到该正文。
这是很容易避免的问题,因为脚本失败并卡在 iframe 中,但它仍然在主页上继续,因为它确实提供了对document
.
当我尝试在我的函数中使用警报时,问题就出现了。似乎 iframe 接管了我的脚本并用Permission denied to access property 'alert'
.
我如何告诉浏览器/脚本或其他任何东西,我只希望我的脚本在主文档上运行并且我不想被 iframe 打扰?我安装了 NO-script 插件,允许主域并阻止辅助域(即在 iframe 内加载)并且所有警报消息都正常。但是,我不能要求我的用户安装 noscript 启用/禁用特定域,并且我的脚本应该可以正常工作。我需要找到适用于所有启用的 iframe 的解决方案。
希望它没有听起来令人困惑。
感谢您的任何帮助。