获取JavaScript中的图像宽度/高度单位

获取JavaScript中的图像宽度/高度单位,javascript,internet-explorer,Javascript,Internet Explorer,我正在用JavaScript创建一个图像对象,如下所示 myImg = document.createElement('<img id=preview_image src="src/myImage.jpg" align="baseline" width="50%" height="80%"/>'); myImg=document.createElement(“”); 图像HTML将以给定的形式从数据库中获取。 现在,如何使用单位获得高度和宽度(即,在这种情况下,宽度为50%) 如

我正在用JavaScript创建一个图像对象,如下所示

myImg = document.createElement('<img id=preview_image src="src/myImage.jpg" align="baseline" width="50%" height="80%"/>');
myImg=document.createElement(“”);
图像HTML将以给定的形式从数据库中获取。
现在,如何使用单位获得高度和宽度(即,在这种情况下,宽度为50%)

如文档所述,每个DomeElement都有一个ClientHeight和ClientWidth属性,这些属性将具有您需要的值


如文件所述,每个DomeElement都有一个ClientHeight和ClientWidth属性,这些属性将具有您需要的值


对于任何图像对象,您都可以使用上述方法找到它。我甚至在发布问题之前就尝试了这两种方法,获得值的唯一方法是
myImg.attributes['width'].ie8_值
但这将使其具有ie8特定性,我是否可以为至少一些流行的IEs(7,8和9)找到某种方法?@kashif:
getAttribute('width'))
在IE9和Chrome 10中正确返回
'50%
。对不起,我不准备测试IE的任何其他版本。对于任何图像对象,您都可以使用上述方法找到它。我甚至在发布问题之前就尝试了这两种方法,获得值的唯一方法是
myImg.attributes['width'].ie8_值
,但这将使其具有ie8的特定性,我是否可以为至少一些流行的IEs(7,8和9)找到某种方法?@kashif:
getAttribute('width'))
在IE9和Chrome 10中正确返回
'50%
。对不起,我不准备测试IE的任何其他版本
clientHeight
clientWidth
返回像素值,这不是OP想要的。
clientHeight
clientWidth
返回像素值,这不是OP想要的。这只适用于IE8及以下版本。IE9和其他浏览器不支持在
document.createElement()
中提供属性。您只能传递元素名。那么使用上述HTML创建图像元素的更好方法是什么?如果能够,您将使用标记名创建元素,然后通过属性设置属性。您可以从JS库中创建元素,包括jQuery或Prototype,请检查,我将创建一个
IMG
元素,然后解析HTML字符串以填充相应的
IMG
属性,有没有更好的方法?该链接显示了另一种方法,本质上是创建一个
div
,将其设置为
innerHTML
,然后使用
childNodes
,这将是字符串的HTML内容。这仅适用于IE8及以下版本。IE9和其他浏览器不支持在
document.createElement()
中提供属性。您只能传递元素名。那么使用上述HTML创建图像元素的更好方法是什么?如果能够,您将使用标记名创建元素,然后通过属性设置属性。您可以从JS库中创建元素,包括jQuery或Prototype,请检查,我将创建一个
IMG
元素,然后解析HTML字符串以填充相应的
IMG
属性,有没有更好的方法?该链接显示了另一种方法,本质上是创建一个
div
,将其设置为
innerHTML
,然后使用
childNodes
,这将是字符串的HTML内容。
var width = myImg.width,   // width = '50%'
    height = myImg.height; // height = '80%'

// or
width = myImg.getAttribute('width'),
height = myImg.getAttribute('height');