getComputedStyle与currentStyle获取样式(style/class)

样式表有三种方式

内嵌样式(inline Style) :是写在Tag里面的,内嵌样式只对所有的Tag有效。

内部样式(internal Style Sheet):是写在HTML的里面的,内部样式只对所在的网页有效。

外部样式表(External Style Sheet):如果很多网页需要用到同样的样式(Styles),将样式(Styles)写在一个以.css为后缀的CSS文件里,然后在每个需要用到这些样式(Styles)的网页里引用这个CSS文件.

ps:用document.getElementById(‘element').style.xxx可以获取元素的样式信息,可是它获取的只是DOM元素style属性里的样式规则,对于通过class属性引用的外部样式表,就拿不到我们要的信息了。

1、getComputedStyle

  getComputedStyle是DOM标准的全局方法,可以获取到当前对象样式规则信息: 

var obj_color=window.getComputedStyle(obj,null).background-color;//获取元素对象的背景颜色

2、currentStyle

  currentStyle是ie浏览器的方法,它是DOM元素的一个属性,用法如下:

var obj_background_color=obj.currentStyle.background-color;//获取元素对象的背景颜色

总结,这样子兼容性的写法是:

return window.getComputedStyle ? window.getComputedStyle(obj,null).bcakground-color : obj.currentStyle.bcakground-color ; 
原文地址:https://www.cnblogs.com/chendc/p/5643824.html