gpt4 book ai didi

javascript - 我正在尝试将一个类添加到具有禁用类的 li 标记

转载 作者:行者123 更新时间:2023-11-28 14:01:30 25 4
gpt4 key购买 nike

如何编写 JavaScript 条件语句:

If an li tag has a class of "disabled" then add a class of "hide"

我正在尝试将该类添加到具有该类的 li 标记中。 li 标签没有 id。

最佳答案

首先你必须获取所有li标签:

var lis = document.getElementsByTagName('li');

然后循环它们并执行操作:

for(var i = lis.length; i--;) {
var li = lis[i];
if(/\bdisabled\b/.test(li.className)) {
li.className += ' hide';
}
}

引用: getElementsByTagName , className

为什么我们不能使用getElementsByClassName

因为它是not supported up to and including IE8 .

<小时/>

但是你可以测试一下浏览器是否支持 querySelectorAll :

if(typeof document.querySelectorAll === 'function') {
var lis = document.querySelectorAll('li.disabled');
for(var i = lis.length; i--;) {
lis[i].className += ' hide';
}
}
else {
// code from above
}
<小时/>

如果您只引用了某些 li,则只需使用 if 类:

if(/\bdisabled\b/.test(element.className)) {
element.className += ' hide';
}

(在所有情况下,您还可以添加进一步的测试来检查元素是否已经具有 hide 类。)

<小时/>

更新:

如果您想再次删除该类,您可以进行类似的循环并使用 replace :

for(var i = lis.length; i--;) {
var li = lis[i];
li.className = li.className.replace(/\s*hide\s*/, '');
}

您应该考虑使添加和删除类函数可重用,以便您也可以将它们与其他类一起使用。

关于javascript - 我正在尝试将一个类添加到具有禁用类的 li 标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4880074/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com