因工作需要,最近研究网页图片模糊预加载问题,本来是很简单的几行代码,但是发现ie浏览器下不能正常显示,最后通过网上找资料做出以下总结:(说明,由于是图片网站,在网页打开时已经有些图片预先加载到缓存中)
var imgShow = new Image();
imgShow = src;//src为传递过来的图片地址
imgShow.onload = function (){
$("#div_img").src = this.src;//$("#div_img")为用来显示大图的img
}
上面代码在ff和chrome浏览器中运行正常,但是在ie下不能正常显示,因为在ie浏览器中先赋值src,在绑定onload事件,如果是已经加载的缓存图片就错过了onload事件的触发,所以要将onload事件下载src赋值之前:
var imgShow = new Image();
imgShow.onload = function (){
$("#div_img").src = this.src;//$("#div_img")为用来显示大图的img
}
imgShow = src;//src为传递过来的图片地址
延伸①:(从一些大虾博客中)
上面的方法是可行的,但是存在一定的风险;onload事件形成了一个闭包,且保存了对imgSh