Wie ausgebrochene Bilder in IE mit jQuery ausblenden?


Answers

Die Verwendung der oben genannten Lösung führt immer noch zu einem kurzen Erscheinen des "Symbols für beschädigte Bilder", da eine Latenz zwischen error() und hide() .

Ich habe das jQuery imagesloaded plugin verwendet, das einen Rückruf ermöglicht, wenn das Bild erfolgreich geladen wurde. Zuerst setze ich das Bild auf visibility:hidden . Dann setze ich es visible wenn es erfolgreich geladen wird:

$('div.target img').each(function(){
  $(this).imagesLoaded(function(){
    $(this).css('visibility','visible');
  })
})

Dies verwendet etwas mehr Ressourcen, verhindert jedoch, dass das "Symbol für beschädigte Bilder" überhaupt angezeigt wird. Ich benutze diese Site nicht überall, sondern nur Bereiche, in denen ein Bildbruch möglich ist.

Question

Ich habe diesen Code aus der jQuery-Site kopiert versucht, aber es schlägt in IE7 / IE8, funktioniert aber in anderen Browsern. Was mit diesem Code nicht stimmt, stammt von der jQuery-Site (http://api.jquery.com/error/). Ich benutze jQuery Version 1.4.4.

$(document).ready(function(){ 
  $("img").error(function(){
    $(this).hide();     
  });    
});



Related