获取对象样式属性函数getStyle()
2012-11-16 22:57
281 查看
function getStyle(elem, styleName){ if(elem.style[styleName]){ //获取内联样式 return elem.style[styleName]; } else if(elem.currentStyle){ //IE特有的属性 return elem.currentStyle[styleName]; } else if(window.getComputedStyle){ //DOM标准属性 return window.getComputedStyle(elem, null)[styleName]; } else{ return null; } }
考虑到函数中有重复工作的部分,优化一下:
function getStyle(elem, styleName){ if(elem.currentStyle) { getStyle = function(elem, styleName) { if(elem.style[styleName]){ return elem.style[styleName]; } else { return elem.currentStyle[styleName]; } } } else if(window.getComputedStyle) { getStyle = function(elem, styleName) { if(elem.style[styleName]){ return elem.style[styleName]; } else { return window.getComputedStyle(elem, null)[styleName]; } } } else { getStyle = function(elem, styleName) { return elem.style[styleName]; } } return getStyle(elem, styleName); }
代码貌似有点长了,再优化一下:
function getStyle(elem, styleName){ if(elem.currentStyle) { getStyle = function(elem, styleName) { return elem.style[styleName] ? elem.style[styleName] : elem.currentStyle[styleName]; } } else if(window.getComputedStyle) { getStyle = function(elem, styleName) { return elem.style[styleName] ? elem.style[styleName] : window.getComputedStyle(elem, null)[styleName]; } } else { getStyle = function(elem, styleName) { return elem.style[styleName]; } } return getStyle(elem, styleName); }
不作多余代码解释了,网上搜下一大堆。
相关文章推荐
- 获取对象样式属性函数getStyle()
- js获取指定节点对象的样式属性的值的封装函数(兼容ie、Opera和符合w3c标准浏览器)
- js获取指定节点对象的样式属性的值的封装函数(兼容ie、Opera和符合w3c标准浏览器)
- js 获取函数的所有参数和遍历JavaScript某个对象所有的属性名称和值的方法
- 关于类的入门例子(9): 获取对象的 RTTI 属性与事件的函数
- 获取样式属性函数封装
- [置顶] JS原生获取对象的所有属性-函数包装
- 获取元素属性函数getStyle的优化
- javascript获取函数名称、函数参数、对象属性名称的代码实例
- 获取对象的 RTTI 属性与事件的函数
- JavaScript函数之实际参数对象(arguments) / callee属性 / caller属性 / 递归调用 / 获取函数名称的方法
- javascript获取函数名称、函数参数、对象属性名称的代码实例
- 兼容的获取样式的函数getStyle()
- 函数 getStyle() 获取元素 CSS 样式
- js 获取函数的所有参数和遍历JavaScript某个对象所有的属性名称和值的方法
- (转载)记录函数 getStyle() 获取元素 CSS 样式
- Python帮助函数调试函数 用于获取对象的属性及属性值
- js 获取函数的所有参数和遍历JavaScript某个对象所有的属性名称和值的方法
- 手写的一个兼容各种浏览器的javascript getStyle函数(获取元素的样式)