加载完图片后获取图片的高度

13

我正在尝试在图像加载后获取其高度。原因是因为Chrome在图像加载之前获取高度,因此会得到错误的高度值。

var imgHeight = $("#pic25").height();

注意:我不应该在这个上面使用$(window).load(function(){

我该怎么做?

2个回答

17
$("img#pic25").load(function(){
  var height = $(this).height();
});

6

你需要使用onload(.load())事件,因为只有在DOM和相关资源(如图像)加载完成后,才会调用load事件,所以它才能正常工作

$(body).load(function(){
  var height = $("#pic25").height();
});

这会起作用

要检查特定的图像是否加载,您可以采用@arvind回答中的代码。


但是你应该将此事件处理程序附加到“#pic25”..这只会在“body”加载时触发:9 - user1386320
@Zlatan,如果我们只需要检查选定的图像以加载而不是全部图像,那将会很方便。 - NullPoiиteя
1
我认为你忘记在 body 周围加引号了。 - user4227915

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接