我使用以下代码动态更新JQTouch站点上的图像:
$('#sv_map')
.one('load', function() {
$(this).fadeIn();
})
.attr('src', imgURL);
从here了解了这一点。 sv_map
是一张图片,imgURL
指向有效的现有JPG文件。
此代码可在所有主流浏览器(Chrome,Safari,Firefox,IE)以及实际设备(多个iPhone和iPod)上正常运行。
我不想断定模拟器有一个错误(这似乎是一个微不足道的问题)。需要哪些附加代码才能确保加载图像文件?有没有人与MobiOne有类似的经历?
答案 0 :(得分:2)
并非所有浏览器都能正确触发load
事件(尤其是从缓存加载时),因此您需要通过检查图像上的.complete
手动执行此操作,如下所示:
$('#sv_map').one('load', function() {
$(this).fadeIn();
}).attr('src', imgURL)
.each(function() {
if(this.complete) $(this).load();
});