Если изображение не в кеше.
|
var img = new Image(); img.onload = function() { alert('load'); }; img.src = 'http://javascript.ru/forum/images/ca_serenity/misc/logo.gif';Обновляю страницу -- всё работает. |
$("img").each( function() {
$(this).bind('load', function () { alert('load'); }); }); А так? |
Ну можно данный код на onload повесить, чтобы уж наверняка все изображения на этот момент загружены были.
|
С парой сотен изображений такой подход не больно оправдан :)
|
Weeee,
это был сарказм. Вы вешаете обработчик на событие, которое уже произошло. Что вы хотите получить? Если уж сильно хочется именно такой код, то проверяйте свойство complete у изображений. |
Я его, естествено, тоже проверяю, в опере все равно не работает :)
if (this.complete) { $(this).trigger('load'); } |
Это уже не смешно даже.
$(img").each( function() { $(this).bind('load', function () { alert('bind'); }); if (this.complete){ alert('trig'); $(this).trigger('load'); } }); В опере ни одного сообщения не появляется. |
if (this.complete){ alert('hello1'); } else $(this).bind('load', function(){ alert('hello2'); }); Если изображения поместить в блок со своейством display: none;, то Opera 10 показывается hello2. Если же убрать display: none;, то мы увидим только hello1. А если изображение уже было в кеше, то вообще никакого сообщения мы не увидим! |
Короче говоря, как я и говорил, не работает.
|
Часовой пояс GMT +3, время: 13:12. |