原生JS操作class 极致版

Posted xiaobaiv

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了原生JS操作class 极致版相关的知识,希望对你有一定的参考价值。


    // 获取class
    function getClass(el) {
        return el.getAttribute('class')
    }
    // 设置class
    function setClass(el, cls) {
        return el.setAttribute('class', cls)
    }
    
    // 当然彩蛋压轴戏肯定是在最后的啦
    // 判断class是否存在
    function hasClass(elements, cName) {
        return !!elements.className.match(new RegExp("(\s|^)" + cName + "(\s|$)"));
    }
    // 添加clss
    function addClass(elements, cName) {
        if (!hasClass(elements, cName)) {
            elements.className += " " + cName;
        }
    }
    // 删除class
    function removeClass(elements, cName) {
        if (hasClass(elements, cName)) {
            elements.className = elements.className.replace(new RegExp("(\s|^)" + cName + "(\s|$)"), " ");
        }
    }
    // 切换class
    function toggleClass(elements, cName) {
        if (hasClass(elements, cName)) {
            elements.className = elements.className.replace(new RegExp("(\s|^)" + cName + "(\s|$)"), "");
        } else {
            elements.className += " " + cName;
        }
    }

以上是关于原生JS操作class 极致版的主要内容,如果未能解决你的问题,请参考以下文章

原生JS实现的DOM操作笔记(草稿整理)

原生支持苹果M1 Mac的VS Code稳定版来了,运行速度提升

Q新闻丨Windows原生运行Linux的技术细节;使用Swift为Android构建代码;Vue.js 2.0版发布,框架重写

js经常用到的代码片段

使用原生JS实现鼠标点击爱心效果 !!!

使用原生JS实现鼠标点击爱心效果 !!!