JQuery проверить, если изображение загружено
Мне нужна помощь со следующим кодом, который не работает:
var timeoutID= 0; var currentImage = 0; // первое изображение - это позиция 0 в массиве arrImages var arrImages=[bla bla bla массив URL-адресов изображений]; функция слайд-шоу () { if ($ ('# myImg'). complete) // <------- Здесь происходит сбой, поскольку он НЕ УКАЗАН. { // curentImage - это глобальная переменная, которая запоминает экранную клавишу массива изображения var nextImage = currentImage + 1; // arrImages - массив URL изображений если (Nextimage> = arrImages.length) {Nextimage=0;} $('# MyImg') атр ('ЦСИ', NEXTIMAGE). clearTimeout(timeoutID); // Меняем изображение каждую секунду после загрузки предыдущего изображения timeoutID= SetTimeout ("слайд-шоу ()",1000); } еще {. $ ('# MyImg') нагрузка (слайд-шоу); } }
По сути, я хочу менять src для #myImg каждую секунду, при условии, что счетчик запускается после загрузки изображения.
*Я ненавижу кнопку кода в текстовом редакторе для переполнения стека!
2 ответа
'complete' для нативного объекта javascript. поэтому вы должны получить объект javascript из jQuery. лайк,
$('#myImg')[0].complete
или же
$('#myImg').get(0).complete
Если я правильно помню, изображение получает ширину и высоту, когда оно загружается. Поэтому я думаю, что вы можете проверить ширину, если изображение. И до тех пор, пока это 0, изображение не загружается.