Ну, я разрабатываю аддон firefox, который автоматически обновляет заданный набор URL-адресов с некоторой модификацией. Невозможно показать весь код. Итак, я только что скопировал часть кода, которая дает мне ошибку.События DOMContentLoaded перестают запускаться. Зачем?
Событие 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) закладка no.1 продолжает загружать несколько раз, если я оставить страницу бесперебойный (это то, что он хочет)
3) если я открыть новую вкладку (вкладка сказать нет. 2), новый вкладка (вкладка № 2) начинает перезагружаться непрерывно, как я хотел. Однако вкладка №. 1 остановка перезагрузки.
Что я хочу, так это продолжать перезагрузку обоих вкладок № 1 и вкладки №. 2. Как это сделать? что не так, мой код?