Задача, сразу после загрузки странички на активной вкладке начать выполнять некие действия.
Сразу - это десятые доли секунды :)

Используя команду вида:

Выделить код

Код:

function pageSwitched(){
alert("Страничка загружена, продолжаю работать.");
}
getBrowser().addEventListener("load", pageSwitched(), false);

можно проверить состояние странички на момент вызова.
По идее должна вызываться сразу после команды перехода по заданному адресу.
Но если нажать, к примеру F5, а потом запустить проверку - то скажет, что страничка загружена, т.к. это ещё старая страничка и переход не успел начаться. 
Это первая проблема.

Вторая в том что если загрузка новой странички началась то команда по окончании загрузки не выполнится. 

Как это можно решить? Пока есть лишь вариант запуска проверки в цикле, но вдруг есть более интересные варианты? :angel:

Содержимое и адрес странички активной вкладки может и не измениться, при переходе. :whiteflag:

я использую такой метод и никаких проблем не встретил

Shutnik пишет

я использую такой метод и никаких проблем не встретил

Спасибо, Shutnik. Тогда просмотрел тему, но не разобрался. 
Но после того как ткнули носом всё увидел и понял, что это ОНО :)


Правда не получается использовать это нужным образом.

Выделить код

Код:

function my_unload_listener(){ alert("beforeunload");
}

    function my_load_listener (event)
    {
        var doc = event.originalTarget;
        var win = getBrowser().selectedBrowser.contentDocument;
        if(doc == win)
        { //alert("load");
rr=123;
            // активный таб
        }
    }
var rr=0;
function rrr(){
        var appcontent = document.getElementById("appcontent");
        if(!appcontent)
            return;
        appcontent.addEventListener("load", my_load_listener, true);
        appcontent.addEventListener("beforeunload", my_unload_listener, true);
}
loadURI ("forum.mozilla-russia.org", null, null);
rrr();
if(rr==123) alert("Всё сработало верно. Продолжаем работу.");
else alert("Нет!");

Ни разу алерт не выдал, что всё сработало.
И функции my_load_listener и my_unload_listener вызываются каждый раз при переходе, даже если не задействую код, а просто перехожу по ссылкам браузера. Если использую код, то количество их вызывов нарастает (страничка всё таже). Как-нибудь ограничить можно? :)

С тем что  я оказывается каждый раз создаю ещё одного слушателя события разобрался. :dumb:

Ни разу алерт не выдал, что всё сработало.

это условие проверяется до загрузки таба, его нужно засунуть в my_load_listener