IE ошибка window.onload не работает последовательно

Я пытаюсь реализовать слайдер орбиты JQuery. У меня есть тег div, который содержит несколько изображений. Проблема, с которой я сталкиваюсь, заключается в том, что функция orbit() иногда вызывается до загрузки всех изображений. Я попытался решить эту проблему, окружив вызов функции орбиты следующим образом:

window.onload = function(){jQuery('#img-container').orbit()} 

Это должно гарантировать, что орбита вызывается только после загрузки страницы и всего содержимого (включая необходимые изображения). Однако событие onload не всегда срабатывает, потому что слайдер изображений не всегда загружается. Я замечаю, что если я очищаю кеш и перехожу на страницу, событие onload не срабатывает и, следовательно, орбита никогда не срабатывает.

Другие вещи, которые я пробовал: Я также пробовал jQuery(window).load(), который не удался. Я также пытался перебирать каждое отдельное изображение в контейнере с помощью функции.load (), но безуспешно. Мне удалось решить эту проблему в Chrome и FF, используя что-то похожее на этот подход: jquery.one () события load и error не работают

У кого-нибудь есть другие предложения, чтобы исправить это в IE?

ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ: Я провел тест, в котором я использовал deelay.me, чтобы задержать изображение на несколько секунд, и благодаря этому функция загрузки работала согласованно. Только когда изображение загружается быстро, нагрузка не срабатывает

1 ответ

Правильный способ сделать это в jQuery с помощью функции jQuery:

$(function(){
    //onload stuff here...
});

Это должно работать в IE, а также в других браузерах.

Другие вопросы по тегам