获取元素属性的方法

1. style

1.元素.style.属性名 :只能获取元素行内的样式;获取不到css 中 的样式;

 var oBox = document.getElementById("box");
 console.log(oBox.style.width);

2.getComputedStyle

2.getComputedStyle :获取浏览器的计算样式;是window的一个属性
在IE8及以下,getComputedStyle不存在;

 var oBox = document.getElementById("box");
 console.log(getComputedStyle(oBox).width);// "200px"

3.currentStyle

3.currentStyle :在IE中是元素的一个属性;属性值是包含了CSS设置的样式;在谷歌不存在这个属性;

 var oBox = document.getElementById("box");
 console.log(oBox.currentStyle.width);

获取元素的属性;兼容所有的浏览器;

function getCss(curEle,attr) {
     // 如果getComputedStyle在window中存在,那么用getComputedStyle;
     // 否则用currentStyle;
     var  val;
     if("getComputedStyle" in window){
         // 这是标准浏览器; IE9及以上
         val = getComputedStyle(curEle)[attr];
     }else{
         val = curEle.currentStyle[attr];
     }
     // 如果是非空字符串,才进行parseFloat;
     var  reg = /^width|height|fontSize|margin|padding|top|left|right|bottom$/;
     if(reg.test(attr)){
         // 正则匹配要处理去单位的属性
         if(!isNaN(parseFloat(val))){
             // 排除是空字符串的情况
             val = parseFloat(val);
         }else{
             return ""
         }
     }
     return val;
 };
 console.log(getCss(oBox, "width"));// "200px"  200
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值