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

Как сделать код jQuery ПОСЛЕ загрузки страницы?

Если вы хотите, чтобы мероприятие работало над вашим страницы, вы должны называть его внутри $(document).ready(). Все внутри него будет загружаться, как только как DOM загружается и досодержимое страницы загружается.

Я хочу сделать только код javascript после Загружается содержимое страницы, как я могу это сделать?

4b9b3361

Ответ 1

Используйте load вместо ready:

$(document).load(function () {
 // code here
});

Обновление Вам нужно использовать .on() начиная с jQuery 1.8. (http://api.jquery.com/on/)

$(window).on('load', function() {
 // code here
});

Из этого ответа:

Согласно http://blog.jquery.com/2016/06/09/jquery-3-0-final-released/:

Удалены устаревшие псевдонимы событий.

.load, .unload и .error, устаревшие с jQuery 1.8, больше не используются. Используйте .on() для регистрации слушателей.

https://github.com/jquery/jquery/issues/2286

Ответ 2

Следуя

$(document).ready(function() { 
});

можно заменить

$(window).bind("load", function() { 
     // insert your code here 
});

Есть еще один способ, который я использую для увеличения времени загрузки страницы.

$(document).ready(function() { 
  $(window).load(function() { 
     //insert all your ajax callback code here. 
     //Which will run only after page is fully loaded in background.
  });
});

Ответ 3

Изменить: этот код будет ждать, пока весь контент (изображения и сценарии) будет полностью загружен и отображен в браузере.

У меня была эта проблема, когда $(window).on('load',function(){ ... }) срабатывал слишком быстро для моего кода, так как Javascript, который я использовал, предназначался для форматирования и скрытия элементов. Элементы, которые спрятаны слишком быстро и где слева с высотой 0.

Теперь я использую $(window).on('pageshow',function(){ //code here });, и он срабатывает в то время, которое мне нужно.

Ответ 4

Я ищу ту же проблему, и вот что мне помогает. Вот версия jQuery 3.1.0, а событие загрузки устарело для использования с версии jQuery версии 1.8. Событие загрузки удаляется из jQuery 3.0. Вместо этого вы можете использовать метод и связать событие загрузки JavaScript:

$(window).on('load', function () {
  alert("Window Loaded");
});

Ответ 5

И если вы хотите запустить вторую функцию после завершения первого, см. fooobar.com/questions/50434/....

Ответ 6

напишите код, который вы хотите выполнить внутри этого. Когда ваш документ будет готов, это будет выполнено.

$(document).ready(function() { 

});

Ответ 7

никто не упомянул об этом

$(function() {
    // place your code
});

которая является сокращенной функцией

$(document).ready(function() { .. });

Ответ 8

Таким образом, вы можете избежать получения неопределенности в '$'

window.addEventListener("DOMContentLoaded", function(){
    // Your code
});

ОБНОВЛЕНИЕ: Использование 'DOMContentLoaded' быстрее, чем просто 'загрузка', потому что загрузка страницы ожидания полностью загружена, включая imgs... в то время как DomContentLoaded ожидает только структуру