???// 获取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 极致版
原文地址:https://www.cnblogs.com/xiaobaiv/p/10072694.html