好吧,我正在开发一个 firefox 插件,它会自动重新加载一组给定的 url,并进行一些修改。它不可能显示整个代码。所以,我只是复制粘贴给我错误的代码部分。
假设该DOMContentLoaded
事件会在页面加载的所有内容中触发,并且它会正确执行。问题是,如果我打开一个新选项卡,则DOMContentLoaded
不会在旧选项卡中触发事件。
//Any code here runs only for the first time u start the browser
window.addEventListener("load", function() { myExtension.init(); }, false);
var myExtension = {
init: function()
{
var appcontent = document.getElementById("appcontent");
if(appcontent)
appcontent.addEventListener("DOMContentLoaded", myExtension.onPageLoad, true);
},
onPageLoad: function(aEvent)
{
var doc = aEvent.originalTarget; // doc is document triggered "onload" event
//execute on one the top page (not on iframes)
if ((aEvent.originalTarget.nodeName == '#document') && (aEvent.originalTarget.defaultView.location.href == gBrowser.currentURI.spec))
{setTimeout(function(){showInError(doc.location='about:home'}, 500);}
},
}
我想用简单的方式来写问题(对不起我的英语不好)
1)我运行firefox,并且标签(比如标签号1)根据我的需要不断重新加载。
2)如果我保持页面不间断(这就是它想要的),则标签 1 页面会继续重复加载
3)如果我打开一个新标签(比如标签号 2),新标签(标签号 2)开始按照我的意愿不断重新加载。但是,标签号。1 停止重新加载。
我想要的是继续重新加载标签号 1 和标签号。2. 怎么做?我的代码有什么问题?