js获取图片实际大小的宽高

js获取图片实际大小的宽高的方法,找了一篇比较不错的博文:
转发:https://www.jianshu.com/p/41ff1d103d3f
简陋的获取图片实际宽高的方式

// 图片地址
var img_url = ‘13643608813441.jpg'

// 创建对象
var img = new Image()

// 改变图片的src
img.src = img_url

// 打印
alert('width:'+img.width+',height:'+img.height);

结果如下:
在这里插入图片描述
宽高都是0的这个结果很正常,因为图片的相关数据都没有被加载前它的宽高默认就是0,我们需要它加载完所有的相关数据再获取宽和高。

onload加载所有的相关数据后,取宽高

// 图片地址
var img_url = ‘13643608813441.jpg'

// 创建对象
var img = new Image()

// 改变图片的src
img.src = img_url

// 加载完成执行
img.onload = function(){
    // 打印
    alert('width:'+img.width+',height:'+img.height)
}

结果如下:
在这里插入图片描述

通过onload就能获取到图片的宽高了。但onload大一点的图通常都比较慢,不实用,但只要图片被浏览器缓存,那么图片加载几乎就不用等待即可触发onload,我们要的是占位符。所以有些人通过缓存获取也可以这么写。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值