Cross Browser Dom Ready

Eu herdei esse pedaço de código e parece subótimo e possivelmente incorreto, pois está adicionando ouvintes de eventos nos objetos da janela e do documento. No entanto, ele está funcionando corretamente, exceto no blackberry 5.0. Alguém pode explicar se tudo isso está configurado corretamente ou se existem recomendações para torná-lo melhor e / ou mais simplificado?

        if (document.readyState === "complete") 
            callback();
        else if (document.addEventListener) 
        {
            document.addEventListener("DOMContentLoaded",callback,false);
            window.addEventListener("load",callback,false);
        }
        else if(window.attachEvent) 
        {
            document.attachEvent("onreadystatechange", callback);
            window.attachEvent("onLoad",callback);
        } else
            setTimeout(callback,2000);

questionAnswers(3)

yourAnswerToTheQuestion