参考文章:
问:js中style,currentStyle和getComputedStyle的区别?
答:style不仅能取得style的样式,还能设置样式
currentStyle和getComputedStyle只能获取值而不能设置。
var dom = document.getElementById("Div");
console.log(dom.style);; // 只能获取到style属性里面的,通过class或者id设置样式则获取不到
console.log(dom.currentStyle); // 仅限ie使用,可以获取class或者id设置的样式
console.log(window.getComputedStyle(dom)); // ff,chrome使用,可以获取class或者id设置的样式
兼容性写法
/**
* 获得DOM的样式
* @param obj DOM对象
* @param attr 具体的属性名
* @return {*}
*/
function getStyle(obj, attr) {
// IE
if (obj.currentStyle) {
return obj.currentStyle[attr];
}
// FF Chrome
else {
return window.getComputedStyle(obj, null)[attr];
}
}