作者flowwinds (..)
看板Ajax
標題[問題] dom的getElementByClassName
時間Wed May 1 03:26:31 2019
大家好,
寫了個function
---------------------------------------------------------
function removeClass(dom_root, className){
var doms = dom_root.getElementsByClassName(className);
if(doms.length > 0){
var i;
console.log("doms length:"+doms.length);
for (i = 0; i < doms.length ;i=i+1) {
console.log("before length:"+doms.length);
if(doms[i] != null){
doms[i].classList.remove(className);
}
console.log("after length:"+doms.length);
}
}
}
---------------------------------------------------------
印出的結果是
--------------------
doms length:3
before length:3
after length:2
before length:2
after length:1
--------------------
而array就有一個element就沒處理到
有人知道這是甚麼原因嗎?
看起來就是class remove掉後, getElementsByClassName()的結果也會即時更新?
謝謝~
--
※ 編輯: flowwinds (1.162.7.2), 05/01/2019 15:42:26
→ flowwinds: for中條件判斷之前貼錯了 改了一下 05/01 15:46
推 bakedgrass: for之前的判斷跑起來沒問題啊XD 05/02 02:06