布局是 ul>li>i 然后動態添加的li 用了 事件委托的方法 現在問題是,每次刷新頁面,點擊的第一下 都執行到 console.log('1') 在點擊第二下時候,才會執行 console.log('1') console.log('222222222222')動態生成的元素,也是第一次點擊先 console.log('1') 第二次點擊 console.log('1') console.log('222222222222')要怎樣,一直都是 console.log('1') console.log('222222222222') let aul = document.querySelector("#commentList") aul.addEventListener('click',function(ev){ var target = ev.target; while(target !== aul ){ if(target.tagName.toLowerCase() == 'li'){ aa() console.log('1') break; } target = target.parentNode; } }) function aa(){ let zanli = document.getElementsByTagName("li") for (var i = zanli.length - 1; i >= 0; i--) { let num = i zanli[i].addEventListener("click",function(ev){ console.log('222222222222') zaning(num) }) } } function zaning(num){ let zanli = document.getElementsByTagName("li") for (let i = zanli.length - 1; i >= 0; i--) { let findi = zanli[i].querySelector("i") if (i==num) { if(findi.className == 'pt_praise active') { return false; } findi.classList.add("active") var numm = findi.innerHTML findi.innerHTML = Number(numm)+1; } } }
JavaScript 事件委托點擊第一次執行1,點擊第二次執行1和2?
嗶嗶one
2019-03-21 16:15:03