Если изображение не в кеше.
|
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, время: 14:23. |