js兼容总结之获取非行间样式

时间:2023-12-10 20:37:14

非行间样式案例

#div1 {
width: 200px;
height: 200px;
background: red;
}

IE获取非行间样式

var oDiv = document.getElementById('div1');
oDiv.currentStyle.width;

Chrome/FF获取非行间样式

var oDiv = document.getElementById('div1');
oDiv.getComputedStyle(oDiv,false).width;

我的兼容性写法

var oDiv = document.getElementById('div1');
var eleWidth = oDiv.currentStyle && oDiv.currentStyle.width || getComputedStyle(oDiv,false).width;

我的扩展性写法

function getStyle(obj,name){
return obj.currentStyle?obj.currentStyle[name]:getComputedStyle(obj,false)[name];
}

注意 以上只能获取非行间样式,不能设置非房间样式的值。