어쩌면 다른 사람이 같은 질문을 던졌을 것입니다.하지만 이미 질문에 대한 답이있을 수있는 비슷한 결과를 찾지 못해서 제 질문을 물어볼 것입니다. 나는 살아있는 목록이며, 첫 번째 className 목록이 3 항목에서 2 항목으로 변경됩니다. 그래서 저는 지금 1입니다. 그래서 목록에서 "두 번째 항목"을 건너 뛰었습니다. 라이브 노드 목록의 모든 항목을 루프에 포함시키는 가장 좋은 방법은 무엇입니까? (어쩌면 정적 하나를 사용?)자바 스크립트 라이브 노드리스트 루프
var hotElements = document.getElementsByClassName("hot");
var i;
var len = hotElements.length;
for (i= 0; i < len ; i++) {
hotElements[i].className = "pink";
}
.hot {
background-color: red;
color: black;
font-size: 20px;
weight: 700;
}
.cool {
background-color: blue;
font-size: 25px;
}
.pink {
background-color: pink;
font-size: 35px;
<h1 id="header"> List King </h1>
<h2> Buy grocceries </h2>
<ul>
<li id="one" class="hot"> Fresh </li>
<li id="two" class="hot"> Fresh 1</li>
<li id="three" class="hot"> Fresh 2 </li>
<li id="one" class="cool"> Fresh </li>
<li id="two" class="cool"> Fresh 1</li>
<li id="three" class="cool"> Fresh 2 </li>
</ul>
단지의 첫 번째 요소의 클래스를 변경 그것은 당신이 그것을 사용하는 경우 요소를 찾을 수 있도록 계속 전달 위에 루프 수, 비 라이브있는 NodeList를 반환 list :'hotElements [0] .className = "pink";'반복하는 동안. 또는 역순으로 반복하거나'querySelectorAll'을 사용하여 정적리스트를 얻습니다. – Teemu
@Teemu 그런 다음'len'과'i' 변수를 제거하고 루프 조건으로'hotElements [0]'을 사용하고 대신'while' 루프를 사용할 수 있습니다. – Xufox
@Xufox Jup, 가능합니다. – Teemu