为了账号安全,请及时绑定邮箱和手机立即绑定

在onload事件前获取图片的宽高

标签:
JQuery

有时候在获取从后台的图片时,要对图片进行一系列的处理,才渲染出来我们要解决的是没有缓存而又快速的相比onload更快的方式去获取图片的宽高,接下来上代码通过定时循环检测获取:
// 记录当前时间戳var start_time = new Date().getTime()// 图片地址 后面加时间戳是为了避免缓存 var cutSrc = window.ctx + '/touchsys/terminal/showCapture?terminalId=' + terminalId + '×trap=' + Math.random();// 创建对象var img = new Image()// 改变图片的src img.src = cutSrc;// 定时执行获取宽高var check = function(){ // 只要任何一方大于0 // 表示已经服务器已经返回宽高    if (img.width>0 || img.height>0) {        var diff = new Date().getTime() - start_time;        document.body.innerHTML += '        from:check : width:'+img.width+',height:'+img.height+', time:'+diff+'ms';        clearInterval(set);    }}var set = setInterval(check,40)// 加载完成获取宽高img.onload = function(){    var diff = new Date().getTime() - start_time;    document.body.innerHTML += 'from:onload : width:'+img.width+',height:'+img.height+', time:'+diff+'ms';        //在里面在做一些我们想处理的逻辑};

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消