<!DOCTYPE html><html><head lang="zh-CN"><meta charset="UTF-8"><title>setInterval()</title><style type="text/css">.div1 {width: 200px;height: 100px;background-color: gray;}.div2 {width: 200px;height: 100px;background-color: green;}</style></head><body><div class="div1">重生之魔教教主</div><div class="div1">重生之魔教教主</div><div class="div1">重生之魔教教主</div><div class="div1">重生之魔教教主</div><div class="div1">重生之魔教教主</div><div class="div1">重生之魔教教主</div><div class="div1">重生之魔教教主</div><div class="div1">重生之魔教教主</div><div class="div1">重生之魔教教主</div><div class="div1">重生之魔教教主</div><div class="div1">重生之魔教教主</div><div class="div1">重生之魔教教主</div><div class="div1">重生之魔教教主</div><script type="text/javascript">//補充代碼window.onload = function () {var aDiv = document.getElementsByClassName("div1");var len= aDiv.length;for (var i = 0; i < len; i++) {aDiv[i].className = "div2";console.log(len);}}</script></body></html>
4 回答

慕spring
TA貢獻38條經驗 獲得超4個贊
每循環一次,aDiv這個參數值都實時變化了,最初有aDiv有13個數組,當i=0時,第一個div的class已經變成div2,aDiv就跟著變成12個了,這時循環i=1了,所以走得又是新數組的第二個,以此類推,就變成隔行顯示了。

慕圣02889802
TA貢獻2條經驗 獲得超0個贊
首先說聲抱歉,因為我也沒有找到原因。但是如果你只是想要達到每個都換顏色的效果的話,可以把div的獲取方式改變一下,用獲取標簽名的方式獲取。就是用document.getElementsByTagName
- 4 回答
- 0 關注
- 763 瀏覽
添加回答
舉報
0/150
提交
取消