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]
    }

 

posted @ 2018-05-23 10:40  浮沫  阅读(778)  评论(0编辑  收藏  举报