我正在尝试从this skeleton开始为Firefox Mobile编写一个简单的小插件。最后,我想对每个加载的新页面运行一些代码,这似乎最好通过向每个新选项卡添加“DOMContentLoaded”侦听器来实现,该选项卡会在该选项卡加载新页面时触发。为此,我需要检测新标签,这显然是由adding a "TabOpen" listener完成到BrowserApp的套牌。
问题:在启动时(但在安装到已加载的会话时没有),window.BrowserApp.deck
对于唯一的窗口为空。文档,它的内容很少,似乎没有暗示这是可能的。
要自行测试,请下载上面链接的骨架并添加
window.NativeWindow.toast.show(window.BrowserApp, "long");
在bootstrap.js的第48行下面,然后构建,在Mobile Firefox上安装,然后重新启动。你会看到一个toast报告BrowserApp的属性,包括'deck:null'。 (我目前也是你在我的服务器上获得的扩展名hosting a copy,这可以更快地测试:只需将你的Mobile Firefox浏览器指向该链接,安装并重新启动。)
是什么给出的?我误读了什么吗?有没有更好的方法来做我想做的事情,这不会遇到这个问题?某处有更广泛的文档吗?
答案 0 :(得分:1)
等待UIReady
事件。
window.addEventListener("UIReady", function(){your code}, false);