js在不删除原有类名追加新类名方法
添加类名
element.classList.add(class1, class2, ...);
删除类名
element.classList.remove(class1, class2, ...);
兼容IE8
function addClass(el, className) {
var oldClassStr = '';
//先判断元素中是否有class属性
if(ele.getAttribute('class')){
//获取原有的类名
oldClassStr = el.getAttribute('class');
//把原来的类名分割后添加入数组,判断要添加的类名是否已存在
var oldClassArr = oldClassStr.split(' ');
如果!=-1,说明存在或同名,不添加直接return
if(oldClassArr.indexOf(className)!=-1){
console.log(className+"已经存在或同名");
return;
}else{
//添加空格
oldClassStr+=' ';
}
}
//添加新类名
oldClassStr += className;
el.setAttribute('class',oldClassStr);
}
调用--若加多个类名,用空格格开即可
addClass(el,"className1 className2");
兼容IE8
function delClass(el,className){
//先判断元素是否有 class 属性
if(!el.getAttribute('class')){
return;
}
//获取原有的类名
var oldClassStr = el.getAttribute('class');
//把原来的类名分割后添加入数组,判断要添加的类名是否已存在
var oldClassArr = oldClassStr.split(' ');
//获取要删除了类名的下标
var index = oldClassArr.indexOf(className);
//如果!=-1,说明存在,才可以执行删除
if(index!=-1){
oldClassArr.splice(index,1);
}
//把删除后的数组转为字符串
oldClassStr = oldClassArr.join(' ');
el.setAttribute('class',oldClassStr);
}
调用--若加多个类名,用空格格开即可
delClass(el,"className1 className2");
本文来自博客园,作者:JackieDYH,转载请注明原文链接:https://www.cnblogs.com/JackieDYH/p/17634746.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现