Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从当前文档/窗口访问firefox扩展变量_Javascript_Firefox Addon_Scope - Fatal编程技术网

Javascript 如何从当前文档/窗口访问firefox扩展变量

Javascript 如何从当前文档/窗口访问firefox扩展变量,javascript,firefox-addon,scope,Javascript,Firefox Addon,Scope,我的firefox扩展有一个对象MyText myExt = { request: function(){ //adds dynamic script element to the current webpage's head tag }, callback: function(json) { //do something with this } }; 请求向返回json的服务器添加一个动态添加的脚本元素,我希望将json发送到扩展的js代码中的myExt.ca

我的firefox扩展有一个对象MyText

myExt = {
 request: function(){ 
    //adds dynamic script element to the current webpage's head tag
 },
 callback: function(json) { 
    //do something with this 
 } 
};
请求向返回json的服务器添加一个动态添加的脚本元素,我希望将json发送到扩展的js代码中的myExt.callback

来自我的分机

//from my extension, i add a script element
myExt.request();
ping服务器,返回网页

//from server i get the following response
myExt.callback ( {"some":"json"}) ;

//but the window doesnt find a reference to myExt

如何从网页中引用myExt变量?

Firefox扩展以高权限(chrome)运行JavaScript,并具有对浏览器的完全访问权限。网页中的JavaScript代码运行非特权JavaScript,除其他外,不能直接引用特权JavaScript或与之交互

一般来说,当扩展代码与来自网站的代码交互时,您必须非常小心,以免打开安全漏洞,使恶意网站能够以chrome权限执行JavaScript

如果需要在特权和非特权JavaScript之间交换数据,您可以在此处找到更多信息,包括代码片段:


另请参见此链接以在特权和非特权JavaScript之间交换数据: