我有以下代码,当点击缩略图时,需要获取动态加载的图像的宽度。
$("<img class='mypopupimage' src='" + imgSrc + "' style='padding:10px;' width='500' />").appendTo("div.mydiv");
var imgWidth = $(".mypopupimage").width();
我遇到的麻烦是弹出图像的宽度都不同,但是当我从图像中删除width属性时,imgWidth变量被设置为0。
有什么想法吗?
答案 0 :(得分:1)
这已经在堆栈上多次回答,但是,这里是为了方便:
clientWidth和clientHeight是DOM属性,显示DOM元素内部维度的当前浏览器内大小(不包括边距和边框)。因此,对于IMG元素,这将获得可见图像的实际尺寸。
var img = document.getElementById('imageid');
//or however you get a handle to the IMG
var width = img.clientWidth;
var height = img.clientHeight;
此答案取自here
答案 1 :(得分:0)
如果你想使用jQuery或使用udjamaflip所述的“普通”javascript,你应该使用属性naturalWidth:
$("<img class='mypopupimage' src='" + imgSrc + "' style='padding:10px;' width='500' />").appendTo("div.mydiv");
var imgWidth = $(".mypopupimage").attr('naturalWidth');