2014-02-03 2 views
0
$(document).ready(function(){ 
setTimeout(function(){$('.preloader').fadeOut()}, 5000); 
}); 

Этот маленький базовый код показывает значок загрузки, который исчезает при загрузке документа. Как вы можете видеть здесь http://www.intelligen.info, он медленно показывает содержимое до его загрузки.Скрыть все содержимое до его полной загрузки

Как изменить приведенный выше код, чтобы он скрывал весь контент до его полной загрузки?

+0

документ готов обжигают когда DOM готов, не сразу все содержимое загружается. '$ (window) .on ('load', handler);' кажется, что вы ищете –

ответ

0

Вся страница?

$(document).ready(function() { 
    $('.preloader').fadeOut(300); 
}); 

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

$(document).ready(function() { 

    var imageCount = $('img').length; 
    $('img').load(function() { 
     imageCount--; 
     if (imageCount <= 0) 
      $('.preloader').fadeOut(300); 
    }); 

}); 
+0

, это не сработает, если какое-либо из изображений будет кэшировано, так как обработчик onload не будет запущен. – Ped

0
$(document).on('ready', function() { 
    // this is run first, as soon as we can play with the DOM 
    showLoadingScreen(); 
}); 

$(window).on('load', function() { 
    // this is run after, once all the content has loaded (img etc) 
    hideLoadingScreen(); 
}); 
+0

Что делать, если я только хотел, чтобы он скрывал изображения на странице, а не остальную часть контента, как это можно достичь? – angela

+0

Это отдельный вопрос. Он был задан и несколько раз ответил на этом сайте. Обязательно используйте [решение, учитывающее кеширование браузера] (http://stackoverflow.com/questions/1700864/making-images-fade-in-on-image-load-using-jquery) – Ped

 Смежные вопросы

  • Нет связанных вопросов^_^