原生js实现删除class和添加class

Posted LancelotSeven

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了原生js实现删除class和添加class相关的知识,希望对你有一定的参考价值。

内容来自百度搜索

//判断样式是否存在

function hasClass(ele, cls) {
    return ele.className.match(new RegExp("(\\s|^)" + cls + "(\\s|$)"));
}
//为指定的dom元素添加样式
function addClass(ele, cls) {
    if (!this.hasClass(ele, cls)) ele.className += " " + cls;
}
//删除指定dom元素的样式
function removeClass(ele, cls) {
    if (hasClass(ele, cls)) {
        var reg = new RegExp("(\\s|^)" + cls + "(\\s|$)");
        ele.className = ele.className.replace(reg, " ");
    }
}
//如果存在(不存在),就删除(添加)一个样式
function toggleClass(ele,cls){ 
    if(hasClass(ele,cls)){ 
        removeClass(ele, cls); 
    }else{ 
        addClass(ele, cls); 
    
}
//调用
function toggleClassTest(){ 
    var ele = document. getElementsByTagName(‘body‘)[0]; 
    toggleClass(ele,"night-mode"); 

以上是关于原生js实现删除class和添加class的主要内容,如果未能解决你的问题,请参考以下文章

原生JS如何查询一个元素的class,增加一个class,删除一个class

原生JS实现增加删除class

原生JS实现addClass,removeClass,toggleClass

JS点击添加class,再次点击移除class,并且自身也添加class

如何利用JS实现在li中添加或删除class属性

vue.js实现点击后动态添加class及删除同级class