美文网首页让前端飞js
js中设置元素class,添加元素class的方法

js中设置元素class,添加元素class的方法

作者: Vicky丶Amor | 来源:发表于2019-03-05 11:04 被阅读16次

一、el.setAttribute('class','abc');

代码如下:

 .abc {
    background: red;
  }
test div
 var div = document.getElementById('d1');
 div.setAttribute("class", "abc");

IE6/7 : div背景色不是红色
IE8/9/10/Firefox/Safari/Chrome/Opera : div背景色为红色

结果:IE6/7不支持setAttribute('class',xxx)方式设置元素的class。

二、el.setAttribute('className', 'abc')

代码如下:
 
  .abc {
    background: red;
    }
test div
    var div = document.getElementById('d1');
    div.setAttribute("className", "abc");

IE6/7 : div背景色为红色
IE8/9/10/Firefox/Safari/Chrome/Opera : div背景色不是红色

结果:IE8/9/10/Firefox/Safari/Chrome/Opera不支持setAttribute('className',xxx)方式设置元素的class。

PS:很有趣,使用setAttribute的时候第一个参数为class和className的情形在IE6/7和IE8/9/10/Firefox/Safari/Chrome/Opera刚好相反。

三、el.className = 'abc';

代码如下:

 .abc {
  background: red;
  }
test div
   var div = document.getElementById('d1');
   div.className = 'abc';

结果:所有浏览器都支持。

四、el.className += 'abc';

代码如下:

 .abc {
  background: red;
  }
test div
   var div = document.getElementById('d1');
   div.className += 'abc';

结果:所有浏览器都支持,添加了新的class。

其他添加和删除的方法

添加:节点.classList.add("类名");
删除:节点.classList.remove("类名");
代码如下:

 .abc {
  background: red;
  }
test div
   var div = document.getElementById('d1');
   div.classlist.add("abc");      //添加
   div.classlist.remove("abc");   //删除

相关文章

网友评论

    本文标题:js中设置元素class,添加元素class的方法

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