原生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实现addClass,removeClass,toggleClass