在开发的项目中,需要在图片加载完成后,获取图片的实际宽高。
很直接的,就想到了img的onload事件,在onload事件执行的时候,再去获取图片的宽高。
页面中有多张图片,在onload事件event中,获取img元素信息,是最好的方式。
在Chrome 浏览器中,img onload 事件的event信息打印出来,如下:
这个event中, target、currentTarget、srcElement都是null, 元素,在path中。
在safari浏览器中,event信息打印如下
其中 target, srcElement值是当前元素。
因此在onload事件中,获取元素信息的方法,要做兼容处理
img.onload=function(e){
const ele = e.target || e.path[0]
}