javascript
  • jquery
  • internet-explorer
  • dom
  • cross-browser
  • 2011-02-03 2 views 1 likes 
    1

    Я попробовал два различных методов:Предварительная загрузка изображений на IE7-IE8

    url = 'http://domain.com/image.gif'; 
    $('body').append('<img style="display:none" src="'+url+'" />'); 
    

    и

    image = Image(1,1); 
    image.src = 'http://domain.com/image.gif'; 
    

    Изображения получить предварительно загружены в IE6, Chrome 8, Firefox 3.5+

    но не могут заставить их работать в IE8 или IE7


    Любые идеи?

    +0

    Не устанавливайте отображение: нет - возможно, IE оптимизирует его каким-то странным образом; просто не добавляйте изображение в тело, и оно не будет отображаться – Andrey

    +0

    @ Андрей: http-вызовы не отображаются на моем сервере, URL-адреса изображений практически меняются каждый раз, когда страница загружается – RadiantHex

    +0

    Использование Fiddler (www.fiddler2.com) или вкладку сети разработчика IE9 F12 для поиска сетевых запросов. – EricLaw

    ответ

    1

    У вас есть jQuery plugin, чтобы сделать то, что вы хотите.

    Другой способ - выполнить обработку изображения в jQuery только тогда, когда загружена вся DOM, включая изображения. вместо

    $(window).ready(function(){..... 
    

    использования

    $(window).load(function(){..... 
    

    См the documentation.

    +0

    Дело в том, что этот плагин имеет несколько функций обратного вызова, которые называются: a) когда изображение загружено и готово к манипулированию (e, g, получить его высоту/ширину и т. Д.) И b) когда все изображения загружены и готово к манипулированию. – Neil

    Смежные вопросы