js获取某元素的class里面的css属性值代码
2014-01-16 00:00
801 查看
用js如何获取div中css的 margin、padding、height、border等。你可能说可以直接用document.getElementById("id").style.margin获取。但是你说的只能获取直接在标签中写的style的属性,无法获取标签style外的属性(如css文件中的属性)。而下面方法则两者值都可以获取。
实例效果图如下:
js在获取css属性时如果标签中无style则无法直接获取css中的属性,所以需要一个方法可以做到这点。
getStyle(obj,attr) 调用方法说明:obj为对像,attr为属性名必须兼容js中的写法(可以参考:JS可以控制样式的名称写法)。
Js代码
完整实例测试代码:
Html代码
实例效果图如下:
js在获取css属性时如果标签中无style则无法直接获取css中的属性,所以需要一个方法可以做到这点。
getStyle(obj,attr) 调用方法说明:obj为对像,attr为属性名必须兼容js中的写法(可以参考:JS可以控制样式的名称写法)。
Js代码
function getStyle(obj,attr){ var ie = !+"\v1";//简单判断ie6~8 if(attr=="backgroundPosition"){//IE6~8不兼容backgroundPosition写法,识别backgroundPositionX/Y if(ie){ return obj.currentStyle.backgroundPositionX +" "+obj.currentStyle.backgroundPositionY; } } if(obj.currentStyle){ return obj.currentStyle[attr]; } else{ return document.defaultView.getComputedStyle(obj,null)[attr]; } }
完整实例测试代码:
Html代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>js获取某元素的class里面的css属性值</title> <style> #box1{margin:5px;padding:5px;height:100px;width:200px;} a{border:1px solid #ccc;border-radius:3px;padding:3px 5px;margin:5px 0;display:inline-block;background:#eee;color:#f60;text-decoration:none;font-size:12px;} a:hover{color:#ff0000;background:#fff;} </style> </head> <body> <div id="box1">box1的css.#box1{margin:5px;padding:5px;height:100px;width:200px;}</div> <a href="javascript:;" onclick="getcss('marginTop')">获取box1的margin-top</a><br /> <a href="javascript:;" onclick="getcss('paddingTop')">获取box1的padding-top</a><br /> <a href="javascript:;" onclick="getcss('height')">获取box1的height</a><br /> <script> //获取class里面的属性值 var divs=document.getElementById("box1"); function getStyle(obj,attr){ var ie = !+"\v1";//简单判断ie6~8 if(attr=="backgroundPosition"){//IE6~8不兼容backgroundPosition写法,识别backgroundPositionX/Y if(ie){ return obj.currentStyle.backgroundPositionX +" "+obj.currentStyle.backgroundPositionY; } } if(obj.currentStyle){ return obj.currentStyle[attr]; } else{ return document.defaultView.getComputedStyle(obj,null)[attr]; } } function getcss(typ){ alert(getStyle(divs,typ)); } </script> </body> </html>
相关文章推荐
- js获取某元素的class里面的css属性值代码(转)
- js获取某元素的class里面的css属性值代码
- js获取某元素的class里面的css属性值
- js 一段代码获取元素class样式
- js获取、设置元素css属性值
- jquery 获取表单元素里面的值示例代码
- 获取外链css元素的样式属性值
- js获取元素样式属性值 - 较为灵活的函数
- JS-获取class类名为某个的元素-【getClass】函数封装
- js获取单元格自定义属性值的代码(IE/Firefox)
- 笔记-[JS自定义方法]-根据className获取元素对象
- 搜索一个class或者方法或者id写在哪个JS或CSS里面
- JS基础回顾,小练习(获取一个对象里面第一层元素的数量)
- js为元素动态添加css代码
- js 获取当前select元素值的代码
- js通过元素class名字获取元素集合的具体实现
- JS使用getComputedStyle()方法获取CSS属性值
- 转载 JS获取CSS属性值
- js 通过class来获取元素
- 获取元素css属性值getComputedStyle与*.style.*的区别