Проблема с событием onload в IE9
Дата публикации: 19.10.2011
Проблема
В IE9 не срабатывает корректно событие onload для изображений.
Для примера, у меня на странице несколько изображений. По загрузке каждого из них с этим изображением хочу что-то сделать:
$("img").load(function(){
.myFunction();
});
IE9 ведет себя как-то неадекватно: нужная мне функция сработала только для одного изображения на странице.
Решение
Для корректной работы приходится использовать следующую конструкцию:
if(!$.browser.msie)
{
// для нормальных браузеров
$("img").load(function(){
myFunction();
});
}
else // костыль для IE9
{
if($("img")[0].complete == true) myFunction();
else $("img").one("load", function(){myFunction());
}
Теги: баги IE
