我一直在研究js / html中的一些代码并且效果很好。我现在正试图将它打包成Firefox的附加组件,并且在解决XUL文档时遇到一些问题。
PLAIN OLD HTML / JS
在<head></head>
我之间的html测试文件中:
<script type="text/javascript" src="js/MyCode.js"></script>
在</body>
之前的测试文件末尾:
<script type="text/javascript">MyCode.Static.Init();</script>
FIREFOX ADD-ON:OVERLAY.XUL
在扩展包中的overlay.xul文件中,我有:
<?xml version="1.0"?>
<overlay id="mycode"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<script type="application/x-javascript" src="chrome://mycode/content/MyCode.js"></script>
<script>
window.addEventListener("load", function () { gBrowser.addEventListener("load",MyCode.Static.Init,true); }, false);
</script>
</overlay>
这似乎没有进入方法,但是我再也不确定我是否让听众正常射击。这是否是正确的方法来复制我在普通的旧html / js中所做的事情?
答案 0 :(得分:1)
请参阅:https://developer.mozilla.org/en/Code_snippets/Progress_Listeners了解如何捕获所有页面更改/加载/重新加载
答案 1 :(得分:0)
你确定gBrowser准备好了吗? 正如完整性检查一样,将脚本标记更改为
alert(gBrowser);
确保gBrowser已准备就绪。
答案 2 :(得分:0)
这是正确的:
gBrowser.addEventListener(“load”,function(){MyCode.Static.Init();},false);
答案 3 :(得分:-1)
怎么样:
<script>
window.addEventListener("load", function () { MyCode.Static.Init(); }, false);
</script>