为什么这段代码不起作用?
var all_obj_element= new Array();
all_obj_element[0]= document.getElementById('Img3');
alert(all_obj_element[0].style.width);
警告显示一个空框!
答案 0 :(得分:5)
因为您没有设置宽度。以下是获取元素的计算样式值的方法:
var computedStyle = function (el,style) {
var cs;
if (typeof el.currentStyle != 'undefined'){
cs = el.currentStyle;
}
else {
cs = document.defaultView.getComputedStyle(el,null);
}
return cs[style];
}
现在让我们得到值:
var element = document.getElementById('Img3');
alert(computedStyle(element,'width'));
答案 1 :(得分:2)
标识为Img3
的元素尚未设置.style.width
属性集(可以通过JavaScript为其分配值,或使用style
属性来完成)。
Quirks Mode有一篇关于how to read the computed style in a cross-browser fashion的文章。
答案 2 :(得分:0)
如果不需要查看STYLEd宽度,只需查看宽度:
var all_obj_element= [];
all_obj_element[0]= document.getElementById('Img3');
alert(all_obj_element[0].width);