兼容的获取样式的函数getStyle()
2015-03-08 00:14
507 查看
想要得到某个元素的某个样式属性,可以用:
但这样只能得到写在元素上的行内样式,对于link进来的样式文件或<style></style>中写的样式是获取不到的。
标准浏览器提供了一个getComputedStyle函数,具体用法是:
可IE不支持,但它提供了一个currentStyle对象,得到的结果和getComputedStyle差不多
综合上面的情况,我们做一下兼容便可以得到靠谱的解决方法!
再去获取div01的样式的时候就很方便了!
完整代码如下:
<div id="div01" style="color:red">123</div> var ele = document.getElementById("div01"); console.log(ele.style.color);
但这样只能得到写在元素上的行内样式,对于link进来的样式文件或<style></style>中写的样式是获取不到的。
标准浏览器提供了一个getComputedStyle函数,具体用法是:
// 第一个参数为要获取样式的节点,第二个参数为伪类,如:hover,如果没有就填false或null.返回CSSStyleDeclaration对象; window.getComputedStyle(element,伪类) //可以通过属性名来获得需要的样式,下面就得到了元素的字体颜色 window.getComputedStyle(ele,false)["color"];
可IE不支持,但它提供了一个currentStyle对象,得到的结果和getComputedStyle差不多
// IE下通过这种方式也可以得到元素的字体颜色 ele.currentStyle["color"];
综合上面的情况,我们做一下兼容便可以得到靠谱的解决方法!
function getStyle(ele,name){ if (ele.currentStyle) { // IE下的处理 return ele.currentStyle[name]; } else { // 标准浏览器处理 return getComputedStyle(ele, false)[name]; } }
再去获取div01的样式的时候就很方便了!
完整代码如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>demo</title> <style> #div01{font-size:16px;} </style> </head> <body> <div id="div01" style="color:red">123</div> <script> function getStyle(ele,name){ if (ele.currentStyle) { return ele.currentStyle[name]; } else { return getComputedStyle(ele, false)[name]; } } var ele = document.getElementById("div01"); console.log(getStyle(ele,"color")); // rgb(255, 0, 0) console.log(getStyle(ele,"fontSize")); // 16px </script> </body> </html>
相关文章推荐
- 手写的一个兼容各种浏览器的javascript getStyle函数(获取元素的样式)
- 手写的一个兼容各种浏览器的javascript getStyle函数(获取元素的样式)
- JS getStyle获取最终样式函数代码
- 实现一个获取元素样式的函数getStyle
- Javascript如何用一个优雅的姿势通过getStyle函数来获取元素的样式
- 获取对象样式属性函数getStyle()
- js获取指定节点对象的样式属性的值的封装函数(兼容ie、Opera和符合w3c标准浏览器)
- JS获取元素样式、绑定解除事件函数兼容
- 获取对象样式属性函数getStyle()
- 封装getStyle (获取样式currentStyle getComputedStyle兼容处理)
- 函数 getStyle() 获取元素 CSS 样式
- 封装getStyle (获取样式currentStyle getComputedStyle兼容处理)
- js获取指定节点对象的样式属性的值的封装函数(兼容ie、Opera和符合w3c标准浏览器)
- (转载)记录函数 getStyle() 获取元素 CSS 样式
- js 自定义getClass函数实现获取dom的class 兼容火狐ie
- javascript 获取最终样式的函数
- 妙味——封装getStyle()获取样式
- 兼容的获取html元素的当前样式的方法
- 获取样式属性函数封装