js 获取样式

ele.style.attr(这样是获取),ele.style.attr="值"(这样是设置);

这样写能设置样式和获取内联样式,但是获取不了外部样式,嵌入样式

了解一下:

内联样式:

    <p style="color:red">内联样式</p>

嵌入样式:

    <style>

        p{ color:red; }

    <style>

  <p>嵌入样式</p>

外部样式:

    <link rel="stylesheet" href="path">

  <p>外部样式</p>

怎么获取呢?   

DOM2 级样式”增强了 document.defaultView,提供了getComputedStyle()方法。 

IE 不支持 getComputedStyle()方法,但它有一种类似的概念。在 IE 中,每个具有 style 属性的元素还有一个 currentStyle 属性。

currentStyle:该属性只兼容IE,不兼容火狐和谷歌

 写法:

    ele.currentStyle["attr"]或者ele.currentStyle.attr;

 

getComputedStyle:该属性是兼容火狐谷歌,不兼容IE

写法:

    window.getComputedStyle(ele,null)[attr]获取是window.getComputedStyle(ele,null).attr

currentStyle属性和getComputedStyle属性不能设置属性,只能获取 

获取时可以这样写:

function getCss(obj,attr){
        return obj.currentStyle ? obj.currentStyle[attr] : getComputedStyle(obj, null)[attr]
    }

 

猜你喜欢

转载自www.cnblogs.com/fumo/p/9073329.html