#javascript #html #css #jquery
#javascript #HTML #css #jquery
Вопрос:
У меня на странице есть изображения.
Я хочу показать панель загрузки на своей странице, показывая ход загрузки изображений.
Как я могу это сделать?
Комментарии:
1. Будьте более конкретными. Панель загрузки для чего?
Ответ №1:
Я написал плагин jQuery для регистрации обратных вызовов для загрузки изображений.
Вы бы использовали это примерно так…
var loading = $('<div id="loading" />').appendTo('body');
$('body').waitForImages(function() {
loading.remove();
}, function(loaded, all) {
loading.html(((loaded / all) * 100) '% loaded');
});
Комментарии:
1. @yckart
load()
Метод устарел. Если само событие устарело, оно должно быть удалено из W3C.
Ответ №2:
var preload = function (images, callback) {
var count = 0;
for (var i = 0, len = images.length; i < len; i ) {
var img = new Image();
img.src = images[i];
img.onload = function () {
var perc = count * (100 / len) | 0;
if (callback) callback.call(this, perc, perc === 100);
};
}
};
Использование довольно простое:
preload(['http://lorempixel.com/800/600'], function(perc, done) {
console.log( perc);
if(done) console.log( 'Done!' );
// `this` refers to each loaded image.
});