0

我需要获取用户上传图像的尺寸,即有一个文件上传按钮将图像加载到“img”标签中,然后根据 img 的大小设置 img 元素属性。本质上,在页面加载时,图像标签很像这样:

<img id="img">

当用户上传尺寸为 222 X 227 的图像时,呈现给它的尺寸为:

<img id="img" width="222" height="227"> <!--verified by inspecting the element -->

我想检索上传图像的尺寸并使用 jQuery,我的脚本:

$('#img').attr('width') OR $('#img').attr('height');

返回“未定义”。此外,即使在检查元素时$('#img').attr('src')返回实际上确实显示了这些属性以正确的值加载。undefined

这使我得出结论,图像已上传但未添加到DOM可能?

有谁知道怎么回事?

4

1 回答 1

0

好的,我弄清楚了发生了什么,这样做有帮助:

$('#img').load(function(){
   console.log($('#img').attr('width'));
});

给了我想要的维度。但是,我不知道为什么我需要在这里执行 load() 函数回调,如果有人想了解它的话。

于 2013-02-06T01:57:57.587 回答