Как добавить функции в $ (window) .load ()? - PullRequest
4 голосов
/ 07 июня 2011

Просто любопытно, есть ли простой способ добавить функции к событию $(window).load() до его запуска. Например, если вы наберете $(window).load() дважды в начале страницы, будет выполняться только функция второго вызова onload.

Есть ли какой-то инструмент, встроенный в jQuery для добавления к событию onload вместо его замены? Если да, то как насчет вызова $(document).ready()?

Ответы [ 3 ]

5 голосов
/ 07 июня 2011

Они действительно складываются в указанном порядке. Вот пример: http://jsfiddle.net/73D9Z/

Я использовал window.ready ()

$(window).ready(function(){
    alert('window ready 1');
});

$(window).ready(function(){
    alert('window ready 2');
});

$(document).ready(function(){
    alert('document ready 1');
});

$(document).ready(function(){
    alert('document ready 2');
});
2 голосов
/ 03 сентября 2011
function windowLoad(func) {
    var oldonload = window.onload;
    if (typeof window.onload != 'function') {
        window.onload = func;
    } else {
        window.onload = function() {
            if (oldonload) {
                oldonload();
            }
            func();
        }
    }
}

function documentReady(func) {
    var oldonload = document.ready;
    if (typeof document.ready != 'function') {
        document.ready = func;
    } else {
        document.ready = function() {
            if (oldonload) {
                oldonload();
            }
            func();
        }
    }
}
1 голос
/ 07 июня 2011

$ (окно) .load () выполняется после отображения страницы.

$ (документ) .ready (обработчик) выполняет функцию, переданную в качестве параметра, после того, как DOM готов и перед страницейоказано.

...