如何找出尚未在 JavaScript(在 IE 中)中设置样式的图像的宽度?
想象一下,
img = document.createElement("img");
img.src = "MahImage.jpg";
x.appendChild(img);
如果不使用 jQuery,我可以做什么来找出图像的宽度和高度?
我目前正在使用 .width ,它适用于任何智能浏览器,但我必须找到一种让 IE 满意的方法
Imagine you have the following
img = document.createElement("img");
img.src = "MahImage.jpg";
x.appendChild(img);
What can I do to find out the Width and Height of the image without using jQuery?
I am currently using .width , which works fine for any intelligent browser, but I have to find out a way to make IE happy
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
图像加载后,您可以访问属性
宽度
和高度
。例如:
您还可以使用属性
clientHeight
和clienWidth
获取图像尺寸。要了解图像是否已加载,请使用
onload
hanler。例如
After image load's you can access to properties
width
andheight
.For example:
Also you can get image dimensions using properties
clientHeight
andclienWidth
To know if image loaded use
onload
hanler.For example
您可以访问图像的
width
和height
属性,但它们只会在图像加载后返回有用的值;因此您只想在图像的 onload 事件中访问它们(或者给它一个合理的加载时间)。您可以在这里看到它的工作原理: http://jsfiddle.net/aS7a7/
You can access the
width
andheight
properties of the image, but they will only return a useful value once the image has loaded; so you'll only want to access them inside theonload
event of the image (or give it a reasonable time to load).You can see this working here: http://jsfiddle.net/aS7a7/
这很棘手,因为在加载完成之前您无法找到图像的高度/宽度。这意味着您需要附加到图像加载的回调:
This is tricky because you cant find the height/width of an image until after it is done loading. This means you'll need a callback attached to the load of the image:
您需要等待图像加载。代码如下(在 Chrome 中测试):
You need to wait until the image will be loaded. Here is the code (tested in Chrome):