firefox-addon-restartless
全部标签 我正在开发一个基于XUL的Firefox扩展。我正在尝试使用BLOB创建一个内联WebWorker。该代码曾在Firefox33中运行,但在更新到Firefox35后出现错误。这是一个代码示例:try{varblob=newBlob(["functionf(){}"],{type:"application/javascript"});varurl=window.URL.createObjectURL(blob);//blob:null/371e34bd-1fbf-4f66-89cc-24d0c1c7bad5returnnewWorker(url);}catch(e){console.e
---更新----在对此进行更多试验后,我确定我编写的contentScript不是这里的问题。例如,如果我将扩展名缩减为:varbuttons=require('sdk/ui/button/action');vardata=require("sdk/self").data;varself=require("sdk/self");varbutton=buttons.ActionButton({id:"library-link",label:"ExternalResourceLocator",icon:self.data.url("icon-16.png"),});当我通过SDK运行扩展
vargoogle_login_popup="";varsocial_google_login=function(){google_login_popup=window.open('www.google.com',"google_popup",'width=800,height=600');};social_google_login();setTimeout(function(){google_login_popup.close();},1000);它在新的TAB中打开弹出窗口-而不是窗口。但是.close()不会关闭窗口。这应该有效,因为打开窗口的脚本也在尝试关闭它。请注意,这仅适用
我正在使用ToolAPI将面板添加到FirefoxDevTools。我可以定义setup()和dispose()方法来处理初始化和拆卸。但是我不知道如何确定面板当前是否可见,或者何时更改可见性。这个事件是否暴露在某处?明确地说,我只想知道我的面板。所以我想知道我的面板何时可见,或者用户何时切换到例如元素选项卡。 最佳答案 dev/panelAPI当面板的可见性发生变化时,不会公开通知您的方法。但是,您可以绕过API并获悉可见性已更改。当扩展程序在开发人员工具箱中创建的面板的可见性发生变化时,下面的代码将调用函数panelVisibi
我有一个input.onkeydown处理程序,我在setTimeout(..0)之后检查了input.value。我希望input.value在setTimeout回调运行时具有新值。在除Firefox之外的所有浏览器中都是如此。在Firefox中,情况并非总是如此。要检查的代码是:input.onkeydown=function(){setTimeout(()=>this.value=this.value.toUpperCase());};演示:http://plnkr.co/edit/rZmiHdttSXNdpKkR8YbH?p=preview因为我在setTimeout(..0
我发出一个Ajax请求,在其中设置响应缓存能力和最后修改的header:if(!String.IsNullOrEmpty(HttpContext.Current.Request.Headers["If-Modified-Since"])){HttpContext.Current.Response.StatusCode=304;HttpContext.Current.Response.StatusDescription="NotModified";returnnull;}HttpContext.Current.Response.Cache.SetCacheability(HttpCach
我已将我的问题范围缩小到以下函数。这是我正在写的用户脚本的一部分。它在Chrome中完美运行,但在Firefox/Greasemonkey中根本不起作用。我整天都在修补它,但碰壁了。唯一有意义的是如果JSON.parse无法正常工作,这是有道理的,因为众所周知Chrome处理JSON.parse的方式有所不同......但我知道JSON的格式是完美的!functiongetTagline(){varjsonfile=newXMLHttpRequest();jsonfile.open("GET","http://example.com/somegood.json",true);jsonf
我正在开发一个firefox扩展,我想我现在遇到了一个关于Javascript的基本误解,准确地说是“原型(prototype)”概念。考虑以下最小示例,注意设置变量this.demo和this.test时的差异:varExample=newArray();Example.Foo=function(){this.test=null;this.demo="World";};Example.Foo.prototype={initialize:function(resource){this.test="Hello";this.display();},display:function(){al
一个很奇怪的问题。在我的调试中,我发现console.dir(anArray)没有在浏览器的firebug控制台上输出当前值。例如,console.dir(anArray)//line1console.log(anArray[0].prop1)//line2codetochangethevalueofanArray[0].prop1//line3anArray是javascript/json对象的数组,在Firbug的控制台中,第1行输出了第3行设置的新值,第2行是旧值,是我想要的。唯一的解释是console.dir()是异步的,对吧?!我的环境:Windows7,Firefox6.0
我想在元素上触发onpaste事件以检索剪贴板中的数据(我想检查剪贴板中是否存在图像并将其上传到服务器)。它在Chrome上完美运行:$('#textarea')[0].onpaste=function(event){varitems=event.clipboardData.items;if(items.length){varblob=items[0].getAsFile();varfr=newFileReader();fr.onload=function(e){alert('gotit!');}fr.readAsDataURL(blob);}}不适用于Firefox:event.cl