JavaScript:当我尝试使用DOM时,我的for循环似乎不起作用
问题是,问题似乎来自for循环本身。当我删除其中的代码并放入JavaScript:当我尝试使用DOM时,我的for循环似乎不起作用,javascript,loops,for-loop,dom,Javascript,Loops,For Loop,Dom,问题是,问题似乎来自for循环本身。当我删除其中的代码并放入alert(c)时,它什么也没做。我之前用同样的方法做了一点不同的事情,效果非常好。以下是我对之前的问题所做的: for (var b = 0; b <= 99; b++) { var boxTwo = document.querySelectorAll(".icon2.windowbg[style]")[b]; boxTwo.style.backgroundColor = "#552222"; } 对于(var
alert(c)时例如,代码>,它什么也没做。我之前用同样的方法做了一点不同的事情,效果非常好。以下是我对之前的问题所做的:
for (var b = 0; b <= 99; b++) {
var boxTwo = document.querySelectorAll(".icon2.windowbg[style]")[b];
boxTwo.style.backgroundColor = "#552222";
}
对于(var b=0;b您必须将boxTwo从循环中取出,循环条件应为boxTwo.length以防止出现错误样式的null
,除非您的boxTwo
长度为98
var boxTwo = document.querySelectorAll(".icon2.windowbg[style]");
for (var b = 0; b < boxTwo.length; b++) {
boxTwo[b].style.backgroundColor = "#552222";
}
var-boxTwo=document.queryselectoral(“.icon2.windowbg[style]”);
对于(var b=0;b
对于第二个代码也要这样做:
var boxOneNew = document.querySelectorAll(".icon1.windowbg.topicnew");
for (var c = 0; c < boxOneNew.length; c++) {
boxOneNew[c].style.backgroundColor = "#552222";
}
var-boxonew=document.queryselectoral(“.icon1.windowbg.topicnew”);
对于(var c=0;c
注意:确保.icon1.windowbg.topicnew
与DOM中的内容匹配。如您所愿
<td class="icon1 windowbg topicnew">...</td>
。。。
代码的另一部分基本相同,只是没有'topicnew'
类。我要做的是更改此元素的背景色。
是的,有99个元素。document.queryselectoral(“.icon1.windowbg.topicnew”)
它是否返回任何内容?console中是否有任何错误?请共享您的HTML。您的选择器似乎没有拾取100个不同的元素,因为它需要这样才能使此代码不抛出错误。这应该也适用于第二个代码吗?正如我所说,第一个代码没有问题。但它的方法似乎没有问题若要使用第二个。无需担心,您编辑了您的评论。更新了我的答案
<td class="icon1 windowbg topicnew">...</td>