通过原生js里的获取CSS文件中的属性的值的几种常见方法:
- element.style.attr只能获取HTML里的行内CSS属性值。
- element.currentStyle可以获取到外链CSS,但是为IE专用。
- window.getComputedStyle("元素", "伪类");可以获取当前元素所有最终使用的CSS属性值。 伪类不需要时可设置为null。 此方法返回一个包含当前元素所有属性的数组,所以想获取单一属性值在就后面加上下标[attr]
- 所以集百家之长,就有如下代码:
function getStyle(obj,attr) { if(obj.currentStyle) { return obj.currentStyle[attr]; }else { return document.defaultView.getComputedStyle(obj,null)[attr]; } }
jQuery中的.css()方法的底层实现也与此类似。