具有getElementsByClassName的Javascript执行引擎

具有getElementsByClassName的Javascript执行引擎,javascript,html,css,Javascript,Html,Css,对于下面愚蠢的问题和代码源的缩进,我深表歉意。我对编码一无所知。有人能帮我理解为什么我需要点击提交按钮两次,看到第二个正确答案变成绿色,如下面的代码?更糟糕的是,当我在脚本中插入“alert”方法时,只有在我单击alert窗口的“OK”后,第一个正确答案才会变成绿色 多谢各位 埃豪苏德 功能检查{ var cans=document.getElementsByClassName'correct'; 对于i=0;i

对于下面愚蠢的问题和代码源的缩进,我深表歉意。我对编码一无所知。有人能帮我理解为什么我需要点击提交按钮两次,看到第二个正确答案变成绿色,如下面的代码?更糟糕的是,当我在脚本中插入“alert”方法时,只有在我单击alert窗口的“OK”后,第一个正确答案才会变成绿色

多谢各位

埃豪苏德

功能检查{ var cans=document.getElementsByClassName'correct'; 对于i=0;i 狼,加的夫,富勒姆 狼队、米德尔斯堡、阿斯顿维拉 哪个球员助攻最多

席尔瓦 德布劳内
问题是,在第一次迭代中,您正在使用类correct重命名其中一个元素。所以,如果这个类有两个元素,那么在第二次迭代中,情况会怎样呢?[i]i=1将不存在,因为罐子只有一个元素。因此,我访问罐子[0],因为它将全部存在

功能检查{ var cans=document.getElementsByClassName'correct'; 变量数量=罐长度; 对于i=0;i<数量;i++{ 罐[0]。className=cool; } } 形式{ 字体大小:16px; 字体系列:Verdana; } .酷{ 颜色:浅绿色; } 2017/18赛季英超联赛问答比赛 Q1.三支冠军球队中,哪支被提升为英超?

狼,加的夫,富勒姆 狼队、米德尔斯堡、阿斯顿维拉 哪个球员助攻最多

席尔瓦 德布劳内
当您使用具有相同id/类的多个元素时,使用jquery可以节省一些时间。您使用的是element.className=类名;您应该使用element.classList.addclass-name;像这样:


希望这有帮助

非常感谢你,奥里翁。很好用!你得了A!迈克尔·蒙特罗,谢谢你的帮助。它很好用。但是为什么要使用这个cans[0]。className=cool而不是cans[i]。className=cool来迭代循环?很抱歉打扰@MichaelMontero,cans[0]=狼、加的夫、富勒姆和cans[1]=凯文·德·布吕尼不是吗?如果循环不迭代,can[]数组的两个元素如何变为绿色?非常有用,尽管我在这里学到了很多,但我需要了解在迭代过程中调整类“correct”的元素数量。谢谢
function check(){
    var cans=document.getElementsByClassName('correct');
    for(i=0;i<cans.length;i++){
        cans[i].classList.add("cool"); 
    }         
}