【问题标题】:Firefox extension access from iframe从 iframe 访问 Firefox 扩展程序
【发布时间】:2014-02-07 20:40:34
【问题描述】:

我的扩展中有一个 iframe,代码如下:

<html:iframe src="http://link.com/" id="iFrame" flex="1" type="content" />

在我的 main.js 中有一个变量:

var myVarExt='Good!';

但是当我尝试使用代码从 iframe 访问它时:

alert(parent.myVarExt);

在浏览器控制台中出现错误:

Error: Permission denied to access property 'myVarExt'

我该如何解决?

【问题讨论】:

    标签: jquery firefox iframe firefox-addon


    【解决方案1】:

    您不能这样做,因为它会破坏安全模型。在 IFrame 中加载的网页的权限低于扩展本身。请记住,您的扩展程序可以访问用户的文件系统并可以读取或删除文件,想象一下任意网页是否可以向您的扩展程序对象添加方法,然后调用它们。

    内容码和扩展码的通信请参考Interaction between privileged and non-privileged pages

    您使用自定义 DOM 事件在网页和扩展程序之间发送数据。

    【讨论】:

    • 也许有办法将一些链接/域加入白名单?我了解如何使用事件侦听器完成整个事情,但只有在没有其他方法的情况下才想重写整个事情......
    • 没有办法为此目的将域添加到白名单。如果您打算通过不安全的http:// 链接加载这些域,这是一件好事!
    猜你喜欢
    • 2013-03-15
    • 2012-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多