currentStyle与getComputedStyle都是用来获取行内元素style里的属性的。区别在于currentStyle只能用在IE浏览器中。而getComputedStyle可以用在其它非IE浏览器中。
为什么会用到这两个东西,有人会问,如我想获取某个div框的width或height,可以用offsetWidth和offsetHeigth,但通过offset方法获取的值,是包含border宽度的值,并不是div本身的width和height的值。因此如果想给div的style属性的width赋值,不能用oDiv.style.width=oDiv.offsetWidth,而是要使用如下方法:
function getStyle(obj,name){//自定义获取style的方法,传入的参数是当前对象和要获取style中的属性名。
if(obj.currentStyle){//判断是否是IE浏览器
return obj.currentStyle[name];
}
else{
return getComputedStyle(obj,null)[name];
}
}
oDiv.style.width=getStyle(oDiv,width)+5+'px';//意思是给div的width值+5.