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);  
}  

 

不作多余代码解释了,网上搜下一大堆。

 

 

相关文章:

  • 2022-12-23
  • 2021-12-19
  • 2021-08-02
  • 2022-12-23
  • 2022-03-05
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-06-13
  • 2021-07-14
  • 2022-12-23
  • 2022-12-23
  • 2021-09-17
  • 2022-12-23
相关资源
相似解决方案