2012-01-23 16 views
15
<style type="text/css"> 
    .hidden-image-container { 
     display: none; 
    } 
</style> 
<div class="hidden-image-container"> 
    <img src="lulcats.png" /> 
</div> 

Jestem zainteresowana głównie co przeglądarek mobilnych dokonać optymalizacji o nie pobieranie obrazu, który znajduje się w ukrytym pojemniku.Jakie przeglądarki pobrać ukrytych obrazów

To pozwoli mi znacząco skrócić początkowy czas pobierania.

Related reference question about loading images across devices

+0

Jestem pewien, że większość przeglądarek nadal pobiera element "ukryty", ponieważ zakłada się, że ukryty element zostanie użyty w pewnym momencie. Jedyne, co mogę zrobić, aby zapobiec pobieraniu obrazu od razu, to usunięcie obrazu z elementu div z ukrytym obrazem, a następnie użycie div.innerHTML = img tag html, gdy chcesz, aby klient pobrał obraz. – ToddBFisher

+0

Zobacz także https://stackoverflow.com/questions/12158540/does-displaynone-prevent-an-image-from-loading – Pino

Odpowiedz

2

Nigdy nie nazwałbym tego optymalizacja za pomocą przeglądarki do not Download ukryty obraz. To może mieć dziesiątki dobrych powodów i powinno (i będzie) nadal zostać pobrane przez przeglądarkę. Nie mam tabeli liczb ani przeglądarek, ale jestem prawie pewien, że wszystkie przeglądarki mobilne również pobierze taki obraz, jak tylko zauważy to tłumacz.

Obawiam się, że nie ma srebrnej kuli do warunkowego ładowania znaczników <img> za pomocą html/css. Teraz będziesz potrzebował przynajmniej odrobiny ekmascriptu, ale jak zawsze jestem pewien, że społeczność stackoverflow poprawi mnie, jeśli się mylę.

Węzeł <img> nie ma właściwości, takiej jak .preventLoad (która byłaby rzeczywiście przydatna). Może nadszedł czas na whatwg wniosku, będę przyłączenia się i wspierać go :-)

+1

Zgadzam się, że pobranie obrazu jest "poprawnym" zachowaniem. FWIW, obrazy tworzone przez JS są zawsze ładowane, nawet jeśli nie zostały dodane do drzewa DOM (!): 'Document.createElement ('img'). Src = '//example.com/przykład.png';' – user123444555621

Powiązane problemy