猿问

可以用setAttribute/removeAttribute对类名进行增删操作吗?

在群里讨论原生js对类名的操作问题,有人提出可以用setAttribute与removeAttribute的方法对类名进行操作,我觉得很不解:我以为只有classList.add()或classList.remove()这种方法可以解决这种需求,可是有人提出了用setAttribute('class', 'xxx')和removeAttribute('class')的方法。第一感觉就是局限性与不安全:第一只能将类名更改为指定结果,第二删除class属性的做法从来没有见过。请问对类名的操作中是否这样的做法是否具有可行性??

繁花如伊
浏览 570回答 1
1回答

跃然一笑

其实如果只是想要处理增删class的话,也可以选择使用className来做,这样也可以避免classList的兼容性问题。可以选择自行封装两个增删的方法出来。实现代码如下ele.className += ' clsName'; //添加类名ele.className = ele.className.replace(/ ?deleteClsName/g,''); //删除类名
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答