获取对象样式属性函数getStyle()

	
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()》常伟华 创作。
采用 知识共享 署名-相同方式共享 3.0 中国大陆 许可协议进行许可。
  • 多说评论
  • 签名
  • 新浪微博
  • 默认评论
  • Tab Header 5

0 条评论 / 点击此处发表评论

Tab Content 5

开发技术


开发平台和工具

sitemap     166.23ms