我正在尝试使用以下代码查找图像的“真实”宽度:
$(document).ready(function( ) {
$('.pageContent img').each(function(){
var theImage = new Image();
theImage.src = $(this).attr("src");
var imageWidth = theImage.width;
console.log(imageWidth);
}
}
我遇到的问题是每次重新加载页面时结果都不同。一些imageWidth为0。请问为什么会发生这种情况?
这是使用Jquery 1.9.1和Chrome。
谢谢。
最佳答案
Some imageWidth are 0.
原因是您正在计算宽度,然后再将其渲染到DOM。
请改用
onLoad
方法。这样一来,您将获得准确的图像,因为它已添加到DOM
$(window).load(function( ) {
----------calculations goes here
}