为什么js有时候无法获取图片的宽度和高度

快乐打工仔 分类:实例代码

在实际应用中可能又不少朋友遇到这样的状况,那就是无法获取图片的高度。

当然出现这种状况的原因多种多样,下面就介绍一下比较常见的一种。

先看一段代码实例:

var img = new Image();
img.src = imgsrc;
var imgWH = img.heigh;

上面的代码无法正确获取尺寸,得出的结果是0,这是因为图片还没有加载完成就执行了获取尺寸的代码。

所以我们需要在onload事件触发以后再去执行,代码修改如下:

var img = new Image;
img.src = "softwhy.gif";
img.onload = function(){
  var imgWH = img.width
};

上面的代码看上去是非常的完美,的确算是比较晚上,但是在低版本的IE浏览器下,只有第一次访问可以获取尺寸,但是刷新网页的时候就不能够正确获取尺寸,具体原因这里就不多介绍了,可以参阅IE浏览器下图片加载onload事件失效解决方案一章节。

为什么js有时候无法获取图片的宽度和高度

回复

我来回复
  • 暂无回复内容