美文网首页
获得DOM的样式

获得DOM的样式

作者: waka | 来源:发表于2017-03-21 20:50 被阅读40次

    参考文章:

    js中style,currentStyle和getComputedStyle的区别_百度知道

    getComputedStyle()与currentStyle属性的差别详解。—不是同门,似同门

    getComputedStyle与currentStyle获取样式(style/class)

    问:js中style,currentStyle和getComputedStyle的区别?

    答:style不仅能取得style的样式,还能设置样式
    currentStyle和getComputedStyle只能获取值而不能设置。

    var dom = document.getElementById("Div");
    console.log(dom.style);;  // 只能获取到style属性里面的,通过class或者id设置样式则获取不到
    console.log(dom.currentStyle);  // 仅限ie使用,可以获取class或者id设置的样式
    console.log(window.getComputedStyle(dom));  // ff,chrome使用,可以获取class或者id设置的样式
    

    兼容性写法

        /**
         * 获得DOM的样式
         * @param obj   DOM对象
         * @param attr  具体的属性名
         * @return {*}
         */
        function getStyle(obj, attr) {
            // IE
            if (obj.currentStyle) {
                return obj.currentStyle[attr];
            }
            // FF Chrome
            else {
                return window.getComputedStyle(obj, null)[attr];
            }
        }
    

    相关文章

      网友评论

          本文标题:获得DOM的样式

          本文链接:https://www.haomeiwen.com/subject/jwzgnttx.html