sev*_*kul 3 javascript algorithm
我有一个HTML元素列表,其中包含"black"类(以及其他一些类).我想将"黑色"转换为"白色".我写了以下代码.
var blacks = document.getElementsByClassName("black");
for (i = 0; i < blacks.length; i++)
blacks[i].className = blacks[i].className.replace('black', 'white');
Run Code Online (Sandbox Code Playgroud)
有趣的是,一个元素变为白色,一个元素被跳过,直到元素结束.也就是说,具有偶数序的元素保持不变.转换所有黑人我错过了什么?
document.getElementsByClassName返回当您对其所代表的DOM部分进行更改时自动更新的实时NodeList.您将其视为静态列表.您可以通过将其转换为数组来实现:
var blacks = [].slice.call(document.getElementsByClassName("black"));
Run Code Online (Sandbox Code Playgroud)
我突然想到你也可以:
var blacks = document.querySelectorAll(".black"); //NodeList but static
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1626 次 |
| 最近记录: |