Как определить загрузилось ли изображение
Здравствуйте!
Как определить с помощью jquery окончание загрузки изображения ? |
$(image).bind('load', handler); |
exec,
У меня url подгружается через ajax, нужно запустить анимацию появления после загрузки изображения Как в этом случае определить ? $.ajax({ type: "POST", url: "/rand_header.php", data: "userHour="+myHour, success: function(pic){ $('#header').css('backgroundImage', 'url('+pic+')'); $('#header').animate({'opacity':'1'}, 230); } }); |
Andrei, background нельзя анимаировать через animate.
$.ajax({ type: "POST", url: "/rand_header.php", data: "userHour="+myHour, success: function(pic){ $('#header').append('<img style="opacity: 0;" src="' + pic + '" />').bind('load', function () { $(this).fadeIn(); }); } }); |
exec, Я анимирую DIV с background
|
exec, a если так ?
$.ajax({ type: "POST", url: "/rand_header.php", data: "userHour="+myHour, success: function(pic){ myImage = new Image(); function write(){ $('#header').css('backgroundImage', 'url('+myImage.src+')'); $('#header').animate({'opacity':'1'}, 230); } myImage.onload = write; myImage.src = '/themes/images'+pic; } }); |
Ну тогда лучше так
$.ajax({ type: "POST", url: "/rand_header.php", data: "userHour="+myHour, success: function(pic){ $('<img src="' + pic + '" />').bind('load', function () { $('#header').css('backgroundImage', this.src).fadeIn(230); }); }); } }); |
Работает, спасибо!
С fadeIn почему-то не работало, я заменил на animate |
Способ .load не работает в Opera 10.
|
Работает.
|
Часовой пояс GMT +3, время: 09:41. |