zoukankan      html  css  js  c++  java
  • 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>
  • 相关阅读:
    17 盒子模型
    16 input默认样式清除
    15 组合选择器
    14 CSS权重深入
    13 CSS样式权重问题
    12 子代选择器和后代选择器
    11 CSS的三种引入方式和基本选择器
    10 table标签
    NOIP1998拼数
    NOIP1998车站
  • 原文地址:https://www.cnblogs.com/YAN-HUA/p/9264135.html
Copyright © 2011-2022 走看看