Oprava .load () v IE pre obrázky uložené v pamäti Triky CSS

Anonim

Funkcia .load () sa spustí, keď je prvok, na ktorý je volaný, úplne načítaný. Bežne sa používa na obrázkoch, ktoré sa pri pôvodnom spustení JavaScriptu nemusia načítať úplne, a vrátili by tak nesprávne informácie o sebe (napr. Výška / šírka). Väčšina prehliadačov sa touto pokutou zaoberá. IE môže spôsobiť problémy, keď sa obrázky na stránke uložia do pamäte cache.

Výber obrázka a zmena jeho atribútu src, aby sa pripojil náhodný parameter (na základe dátumu). Toto IE prinúti správne spustiť funkciu .load ().

myImge = $("") .attr("src",anyDynamicSource+ "?" + new Date().getTime());

Teraz bude funkcia .load () fungovať, dokonca aj v IE:

$(myImge).load(function() ( alert("will alert even in IE") ));
V prvom komentári nájdete varovanie o použití tejto techniky so sieťou CDN.