Javascript 是否有任何编程方法可以删除列表项的类
我在做一个循环,其中我匹配一些值,并将Javascript 是否有任何编程方法可以删除列表项的类,javascript,Javascript,我在做一个循环,其中我匹配一些值,并将class=“hidden”分配给列表。但是当我再次运行循环时,我希望我的所有列表都应该没有类,这样我可以为其他值赋值 这是我的密码 for (i = list.children.length; i--;) { li = list.children[i]; match = li.textContent.toLowerCase().indexOf(value.toLowerCase()) > -1;
class=“hidden”
分配给列表。但是当我再次运行循环时,我希望我的所有列表都应该没有类,这样我可以为其他值赋值
这是我的密码
for (i = list.children.length; i--;) {
li = list.children[i];
match = li.textContent.toLowerCase().indexOf(value.toLowerCase()) > -1;
li.classList.toggle('hidden', !match)
}
但是在我运行这个循环之前,我希望所有的列表都没有任何类,所以我想删除列表中的heteclass=“hidden”
有人能帮我实现这一点吗您想在现有循环之前实现这一点吗?试试这个:
var list=document.getElementById(“list”);
for(i=list.children.length;i--;){
li=列表。儿童[i];
li.classList.remove(“隐藏”);
}
- foo
- 酒吧
- baz
要在现有循环之前执行此操作吗?试试这个:
var list=document.getElementById(“list”);
for(i=list.children.length;i--;){
li=列表。儿童[i];
li.classList.remove(“隐藏”);
}
- foo
- 酒吧
- baz
为什么不使用元素.classList.contains(),…remove(),…add()等的组合呢
例如:
for(i=list.children.length; i--;) {
li = list.children[i];
if (li.textContent.toLowerCase().indexOf(value.toLowerCase()) > -1) {
li.classList.add('hidden');
// or is it li.classList.remove('hidden'); here?
}
}
即使元素已经有了类,也可以安全地.add()
。该类不会被添加两次。为什么不使用元素.classList.contains(),…remove(),…add()
等的组合。该类上有很多信息
例如:
for(i=list.children.length; i--;) {
li = list.children[i];
if (li.textContent.toLowerCase().indexOf(value.toLowerCase()) > -1) {
li.classList.add('hidden');
// or is it li.classList.remove('hidden'); here?
}
}
即使元素已经有了类,也可以安全地.add()
。该类不会被添加两次。li.classList.classList.remove('hidden')?li.classList.classList.remove('hidden')?是的,这将有助于重新启动。任何其他建议也都很受欢迎,这将有助于从新鲜开始重新开始。我们也欢迎任何其他建议