2012-11-04 10 views
6

Próbuję pobrać obraz, a następnie zastosować zanikanie przy użyciu css background-image.
mogę tego dokonać, gdy jest regularny <img src=''/> jak tak:
jQuery wykrywanie zakończenia obrazu tła css

#mainImg {display:none} 

var c = $('#mainImg'); 
$(new Image()).load(function(){ 
    c.fadeIn(300); 
}).attr('src', c.attr('src')); 

Ale w jaki sposób można wykryć, gdy jest to css background?
Oto css za pomocą jQuery, ale cant wydają się go jak powyższy kod i wykryć, kiedy zakończeniu pobierania

$('<img/>').attr('src', 'image.png').load(function() { 
    $('#mainImg').css('background-image', 'url(image.png)'); 
}); 

edycji ten pomógł! How can I check if a background image is loaded? dziękuję @colin

+1

http://engineeredweb.com/blog/09/12/preloading-images-jquery-and-javascript/ – NickD

+0

możliwy duplikat [Jak mogę sprawdzić, czy obraz tła jest załadowany?] (Http: // stackoverflow .pl/questions/5057990/how-can-i-check-if-a-background-image-is-loaded) – hitautodestruct

Odpowiedz

1

Robiłem to przed chwilowymi dołączanie ukryte dziecko zdjęcie do div, a następnie ustawienie jego rodzica backround obraz i blaknięcie, gdy zdarzenie załadować obraz podrzędnego został zwolniony. Najlepiej usunąć zdjęcie dziecka, aby zachować porządek! Możesz po prostu dołączyć obrazek w dowolnym miejscu, ale to była aplikacja do mapowania i musiałem zachować obrazy powiązane z ich elementami div!