在添加或删除之前,正在使用检查classList是否包含类
Checking classList with contains if a class exists before add or remove?
我的一位同事坚持认为,在添加或删除元素之前,首先检查元素上是否存在类是很重要的。
因此,他在代码中有很多这样的构造:
if (element.classList.contains('info')) {
element.classList.remove('info');
}
if (!element.classList.contains('hint')) {
element.classList.add('hint');
}
我个人认为,如果一个人把.contents()的支票去掉,什么都不会发生。
应指:
如果该类不存在,则不会删除任何内容。这句话毫无意义。
如果类已经存在,则不添加任何内容。
我的同事坚持检查是对的吗?因为不检查可能会带来一些麻烦?
或者我可以忘记那次检查吗?
显式检查毫无意义。这是浪费时间,还会使代码膨胀。
这些检查实际上是内置在add和remove类方法中的。
如果您尝试添加元素已经是其成员的类,则classList.add
将忽略它。
如果您试图移除元素不是其成员的类,那么classList.remove
将不会执行任何操作。
这两种方法都是正确的,没有任何意义,但在某些情况下,您可能需要使用.contains()
,这完全取决于您的情况。
但是在全局范围内,可以直接删除类并不重要。如果类存在,则代码将工作,否则将不工作。
使用.className检查给定的className是否存在。
if (element.className == 'info') {
element.classList.remove('info');
}
if (element.className == 'hint') {
element.classList.add('hint');
}
这个代码对我来说非常有效。
相关文章:
- 为什么不't Javascript对我的输入值进行了一些重新检查
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- 如何检查管道中未定义的项目
- 主干-不管怎样,检查事件以前是否绑定过
- jQuery/Javascript.toggleClass/.classList.toggle的特殊行为
- 使用javascript检查多个输入值,并在1次检查中标记多个输入框
- 递归使用 eval() 是检查程序执行的好方法吗?
- 检查onsubmit doenst work jquery contactform上的函数
- JavaScript 检查隐藏字段中的值并将其设置为隐藏字段值
- API密钥使用和检查示例
- 如何让程序检查所选单词中是否有按键
- JS:检查URL中的参数,然后迭代一个参数为var的函数
- 用于检查数组中是否存在元素的javascript自定义方法
- 如何检查字符串的一部分与数组匹配
- Jquery如何检查今天的时间大于使用给定时间
- 使用javascript反复检查用户在facebook上的登录状态
- 使用 jQuery 检查所有值是否为空或已填充
- 在添加或删除之前,正在使用检查classList是否包含类
- 使用classList检查body中的类
- 香草JS:检查元素classList是否包含数组中的值并删除它们