Подтвердить что ты не робот

События jQuery.load(),.ready(),.unload()

Просто вопрос, для события jQuery. Выполняются ли операции .load(),.ready() и .unload(), когда загружается DOM? Ответ кажется да, когда я вижу документацию jQuery.

<script type="text/javascript">

    $(window).load(function () {
        // run code
        initializeCode();
    });

    $(document).ready(function() {
        //run code that MUST be after initialize
    });

    $(window).unload(function() {
        Cleanup();
    });
</script>

Однако код внутри .ready() выполняется перед initializeCode(); выполняется, поэтому я чувствую себя действительно странно. И теперь я должен разместить свой код внутри метода .onload() и сразу после initializeCode(); line, что означает находиться внутри блока .ready().

Может ли кто-нибудь объяснить мне больше об этом, так как я новичок в jQuery?

4b9b3361

Ответ 1

ПРИМЕЧАНИЕ: .load() и .unload() были устарели


$(window).load();

Выполняется после того, как страница со всем содержимым будет загружена. Это означает, что все изображения, CSS (и контент, определенные CSS, такие как пользовательские шрифты и изображения), сценарии и т.д., Загружаются. Это случается, когда ваш браузер "Stop" -icon становится серым, если можно так выразиться. Это очень полезно для обнаружения, когда документ вместе со всем содержимым загружен.

$(document).ready();

С другой стороны, это сработает, как только веб-браузер сможет запускать ваш JavaScript, что происходит после того, как синтаксический анализатор выполнен с DOM. Это полезно, если вы хотите как можно скорее выполнить JavaScript.

$(window).unload();

Это событие будет запущено, когда вы переходите со страницы. Это может быть Refresh/F5, нажатие кнопки предыдущей страницы, переход на другой сайт или закрытие всей вкладки/окна.

Подводя итог, ready() будет запущен перед загрузкой(), и выгрузка() будет последней, которая будет запущена.

Ответ 2

Загрузка окна будет ждать загрузки всех ресурсов.

документ готов ожидает, что документ будет инициализирован.

разгрузиться, ждет, пока документ будет выгружен.

порядок: документ готов, загрузка окна,............ выгружает окно.

всегда используйте готовый документ, если вам не нужно ждать загрузки изображений.

сокращение для готового документа:

$(function(){
    // yay!
});

Ответ 3

Если используются оба варианта "document.ready", они оба будут стрелять в порядке появления

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

//try changing places
$(document).ready(function(){
    alert('document.ready');
});

Ответ 4

Кроме того, я заметил еще одно отличие между .load и .ready. Я открываю дочернее окно, и я выполняю некоторую работу, когда открывается дочернее окно..load вызывается только в первый раз, когда я открываю окно, и если я не закрываю окно, тогда .load не будет вызываться снова. однако, он вызывается каждый раз независимо от закрытия дочернего окна или нет.