美文网首页
原生js获取元素样式

原生js获取元素样式

作者: Gino_Li | 来源:发表于2019-02-16 13:49 被阅读0次

有时候我们要改变样式之前,需要先做条件判断,例如通过同一个按钮实现评论框的开关,这时我们就要先获取要操作的元素的CSS属性.

获取内联样式obj.style

<div id="comment" style="display:none;">评论框</div>

var comment = document.getElementById('comment');
console.log(comment.style.display);//none
  • 使用这种方式的前提是,css需要用内敛样式的方式书写

获取外联样式或者在<style>中书写的样式getComputedStyle()

<style>
    #light{
        display:block;
    }
</style>
<body>
  <input type="button" value="关"  id="btn"/>
  <p id="light">我是灯</p>
  <script>
                document.getElementById('btn').onclick=function(){
                    var light = document.getElementById('light');
                    var btn = document.getElementById('btn');
                    var sty = window.getComputedStyle(light);
                    if(sty.display=='block'){
                        light.style.display='none';
                        btn.value='开';
                    }else{
                        light.style.display='block';
                        btn.value='关';
                    }
                }
  </script>
</body>

如果要兼容IE6-8,需写上兼容性代码

function getStyle(ele) {
    var style = null;
    
    if(window.getComputedStyle) {
        style = window.getComputedStyle(ele, null);
    }else{
        style = ele.currentStyle;
    }
    return style;
}

相关文章

  • 原生js获取元素样式

    有时候我们要改变样式之前,需要先做条件判断,例如通过同一个按钮实现评论框的开关,这时我们就要先获取要操作的元素的C...

  • vue大坑之获取mint-ui内组件样式

    一.原生js获取css样式(实用,解决问题)必须要提出的是,我们使用 element.style 也可以获取元素的...

  • 获取元素大小和位置的五种方式

    一、直接获取元素样式属性值 运用之前在JS如何获取元素样式?这篇文章中提到的三种获取元素样式方法便可获取元素大小和...

  • dom元素高度、屏幕高度 获取

    原生js获取屏幕高度: jq获取屏幕高度: JS获取dom元素高度和宽度的方法如下:

  • 原生js的一些兼容封装

    获取Dom元素 获取样式表里的样式 添加和移除类名 添加(优化原生防止重复添加) 移除类(优化原生防止重复添加) ...

  • dom操作css

    解决浏览器兼容,获取div样式 页面样式: 通过js修改元素样式: 读取样式: 读取正在显示样式: 语法:元素.c...

  • js初识第二节

    通过js给div元素设置样式 原生js的select的onchange事件来改变p元素文本的color 全选和反选...

  • 1-jQuery基础的扩展(上)

    get() : 就是把JQ转成原生JS outerWidth与原生的区别 outerWidth()可以获取隐藏元素...

  • 原生JS与jQuery中获取元素的方法

    一、原生JS中获取元素的方法   ①根据id:    document.getElementById('...

  • 如何用js改变伪元素样式

    通常设置伪元素的样式直接用CSS很方便 可是有时候想用js动态的去改变伪元素的样式,但是js获取不到伪元素,这就很...

网友评论

      本文标题:原生js获取元素样式

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