我正在動態創建一個元素表并將它們存儲在一個數組中。以下內容可能看起來像是一場絕對的噩夢,但這就是我決定對其進行排序的方式。我現在的問題是addEventListener我想添加一個onclick連接到的事件PlayMusic()。我嘗試了一個簡單的.onclick =并省略了function(){}但隨后PlayMusic()立即執行。在function(){}那里,當我單擊其中一個元素時,第一個參數 ( i) 是“最后使用的數字”(也就是 21 個元素中的 22 個)。我將如何確保這些onclicks 中的每一個在其參數中都有正確的索引?var thetable = document.getElementById("mustable");for(var i=0; i<fullists.length-1; i++){ fullists[i][2] = []; fullists[i][3] = []; for(var j=0; j<fullists[i][1].length; j++) { var row = thetable.insertRow(); fullists[i][2][j] = row.insertCell(); fullists[i][2][j].className = "musentry"; var header = fullists[i][0].substring(0,fullists[i][0].lastIndexOf(".")); if(fullists[i][1][j][1] != undefined) var title = fullists[i][1][j][1]; else var title = fullists[i][1][j][0].substring(fullists[i][1][j][0].lastIndexOf("/")); fullists[i][2][j].innerHTML = header + "<br /><b>" + title + "</b>"; fullists[i][2][j].addEventListener("click",function() { PlayMusic(i,j); },false); fullists[i][3][j] = 0; }}
使用參數將 onlick 事件添加到多個元素
白衣染霜花
2022-10-21 17:25:51