js 获取非行间样式
Posted 雨筠
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 获取非行间样式相关的知识,希望对你有一定的参考价值。
1、getComputedStyle(nodeObj,false);该方法是BOM对象,第一个是要获取样式的节点对象;第二个可以写成任何的字符一般写成false或者null,这里最好是用false因为用null IE9+会有问题;后面直接跟要获取的样式(写在方括号中)即可
var style=getComputedStyle(div,false)[‘width‘];
但是该方法具有兼容性,IE8以下不支持该方法
2、currentStyle[‘attr‘];
该属性返回的也是是一个对象,也是计算后的样式的属性值对的集合。比如要获取某个div宽度。那么可以直接写成
var style=div.currentStyle[‘width‘];
最终可以封装为一个方法:
<script type="text/javascript">function getAttr(obj,attr){ var style; if(obj.currentStyle){ //当有这个属性的时候currentStyle style=obj.currentStyle[attr]; //兼容IE } else{ style=getComputedStyle(obj,false)[attr]; //主流浏览器 } return style; } </script>
以上是关于js 获取非行间样式的主要内容,如果未能解决你的问题,请参考以下文章