在群里讨论原生js对类名的操作问题,有人提出可以用setAttribute与removeAttribute的方法对类名进行操作,我觉得很不解:我以为只有classList.add()或classList.remove()这种方法可以解决这种需求,可是有人提出了用setAttribute('class', 'xxx')和removeAttribute('class')的方法。第一感觉就是局限性与不安全:第一只能将类名更改为指定结果,第二删除class属性的做法从来没有见过。请问对类名的操作中是否这样的做法是否具有可行性??
1 回答
跃然一笑
TA贡献1826条经验 获得超6个赞
其实如果只是想要处理增删class的话,也可以选择使用className来做,这样也可以避免classList的兼容性问题。
可以选择自行封装两个增删的方法出来。
实现代码如下
ele.className += ' clsName'; //添加类名
ele.className = ele.className.replace(/ ?deleteClsName/g,''); //删除类名
添加回答
举报
0/150
提交
取消