Вход

Просмотр полной версии : Насколько актуально?, про обработчик .load().


Broken
11.11.2012, 06:03
Допустим, есть какой-то такой код


$('#someImg').attr({ 'src': '/some.png'}).load(function () {
$(this).fadeIn(500);
});




В одном месте наткнулся на вот такое замечание:


Замечание: в некоторых случаях, если картинка содержится в кеше браузера, событие load может не произойти. Для такого случая можно воспользоваться специальным событием event.special.load,
которое определено в небольшом плагине.


Ссылка на него:
https://github.com/peol/jquery.imgloaded/blob/master/ahpi.imgload.js

Можно и без плагина самому проверять, но насколько это вообще сейчас актуально?, на официальном сайте подобного вроде нет.

Hoshinokoe
12.11.2012, 23:15
Broken,

Лучше вешать сначала обработчик на load, а лишь затем устанавливать src. В таком случае load отработает, даже если картинка подгрузилась из кеша.

Serg_pnz
13.11.2012, 03:32
Hoshinokoe, +1
Когда разбирал чужую функцию прелоада, то наткнулся как раз на эту проблему, что должно быть так
$(new Image()).load().attr('src', '/img/adv.png');

Broken
24.11.2012, 02:52
Hoshinokoe, Serg_pnz Спасибо приму к сведению)