Предварительно загрузите все изображения на веб-сайт с помощью JQuery или Javascript.

На данный момент я не могу найти какой-либо надежный код, но я хотел знать (если возможно), как предварительно загрузить все изображения на веб-странице, используя, например, JavaScript или JQuery.

Может быть, у вас есть экран предварительной загрузки или оверлей, который отображается, пока изображения предварительно загружаются на сайт, а затем исчезает или исчезает по завершении. Любая помощь/направление по этому поводу была бы потрясающей!

Спасибо!


person The Fragile Machine    schedule 19.07.2011    source источник


Ответы (4)


Вы можете отобразить экран-заставку или экран загрузки во время загрузки страницы, а затем удалить этот экран, когда JQuery сообщит вам, что страница полностью загружена. Что-то вроде этого:

$(document).ready(function() {
  // add loader
});

$(window).load(function() {
    // remove loader
});
person slandau    schedule 19.07.2011
comment
похоже, что это работает, я использую его так (пока) '$(document).ready(function(){ $(div#page).hide(); }); $(окно).готово(функция(){ $(div#page).show(); });' Это то, что вы говорили? - person The Fragile Machine; 20.07.2011
comment
Вы действительно должны использовать $(window).load вместо $(window).ready, чтобы убедиться, что все изображения загружены. - person slandau; 20.07.2011

Вы имеете в виду загрузку группы изображений (например, галереи?). Если да, то вы можете сделать это с помощью jQuery. Вы проверили плагин Image Loader? Похоже, он будет делать то, что вы хотите:

http://www.staticvoid.info/imageLoader/

Было бы тривиально поместить div поверх этого, прежде чем запускать его, а затем удалить его в обратном вызове complete().

Вы также можете проверить эту тему SO, в которой также говорится о плагине (который будет вашим лучшим вариантом, IMO): JQuery ожидает завершения загрузки страницы перед запуском слайд-шоу?

person mrturtle    schedule 19.07.2011

Это мой прелоадер. Сначала показать предварительный загрузчик, а когда вся страница загружена, скрыть предварительный загрузчик и показать содержимое. Попробуйте это, это очень просто и легко изменить. Это ссылка на мой пост в блоге с демонстрацией и кодом (~1 Кб): Предварительно загрузить веб-сайт с помощью jquery

person Aleksandar    schedule 16.11.2012

Это автоматически загрузит все изображения в CSS для вашего веб-сайта: http://www.filamentgroup.com/lab/update_automatically_preload_images_from_css_with_jquery/

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

person Will Mulligan    schedule 19.07.2011