Js中img预加载问题

因工作需要,最近研究网页图片模糊预加载问题,本来是很简单的几行代码,但是发现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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值