原生JS中如何获取CSS属性中的值

来源:互联网 发布:模块化编程的好处 编辑:程序博客网 时间:2024/06/11 00:35

css文件中如何得到某个属性值:

一、getComputedStyle是一个可以获取当前元素所有最终使用的CSS属性值,

         返回的是一个CSS样式声明对象 , 只读, 此方法支持Firefox浏览器;

语法:var style=window.getComputedStyle(“元素”,“伪类”);第一个参数是必须的,第二个为可选的。

二、currentStyle 是一款可以兼容IE浏览器的属性返回的是当前所有最终使用的CSS属性值, 

       利用element.CurrentStyle.attribute可获取
  其与getComputedStyle区别:1、 currentStyle不支持伪类样式获取;
                                                 2、currentStyle不支持现代浏览器,支持IE

代码说明:

[html] view plain copy
 print?
  1. <span style="font-size:14px;"><!DOCTYPE html>  
  2. <html>  
  3. <head>  
  4.     <meta charset="utf-8">  
  5.     <title></title>  
  6. </head>  
  7. <style type="text/css">  
  8. #div1{  
  9.     width:100px;height:100px;background: red;  
  10. }  
  11. </style>  
  12. <body>  
  13.     <div id="div1"></div>  
  14. </body>  
  15. <script type="text/javascript">  
  16.     var oDiv = document.getElementById('div1');   
  17.     /*  
  18.         只能获取,不能设置  
  19.         获取到的是计算后的样式  
  20.         最好不要获取复合样式  
  21.         所获取的样式要设初使值  
  22.         获取到的样式类型是字符串  
  23.         别空格  [' width']  
  24.         *获取到的样式带px的   
  25.         transform 获取不到  
  26.         transition 不准确  
  27.     */  
  28. function getStyle(obj,attr){  
  29.         if(obj.currentStyle){      //IE  
  30.             return obj.currentStyle[attr];   
  31.         }else{  
  32.             return getComputedStyle(obj,"伪类")[attr];     //Firefox  
  33.         }  
  34.     }  
  35.       
  36. alert(getStyle(oDiv1,'background'));</html></span>  

然而在jQuery下直接使用$("element").css("属性","设置的值"),进行获取和修改。
1 0
原创粉丝点击