我已经在这几天了,需要帮助。 我知道如果图像在Safari中缓存,则不会调用.load()事件,所以我想出了下面的代码。
它用于判断图像是否缓存,但无法获取缓存图像的宽度和高度。它出现零(在Safari中)。任何见解将不胜感激。谢谢。
var $_item = $('<div id="'+(name+itemIndex)+'" class="box" ><div class="image_back"><img src="'+ image_back +'" id="backcolor" /></div><div class="image_outline"><img src="'+ image_outline +'" /></div></div>').appendTo('body');
if( $('#backcolor', $_item)[0].complete ) {
el_w = $('#backcolor', $_item).width();
el_h = $('#backcolor', $_item).height();
console.log("cache*****" +":"+el_w+":"+":"+$('#backcolor', $_item)[0].width);
} else {
$('#backcolor', $_item).load( function() {
el_w = $('#backcolor', $_item).width();
el_h = $('#backcolor', $_item).height();
console.log("load*****" + this+":"+el_w);
});
}