为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

繁花如伊 2018-11-10 15:12:58
在群里讨论原生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,''); //删除类名


查看完整回答
反对 回复 2018-12-06
  • 1 回答
  • 0 关注
  • 569 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信