我試圖設置節點sharedobject觸發每個href單擊事件,但由於某些原因,只有第一個工作。我究竟做錯了什麼?爲什麼我的循環事件不起作用?
for (let i = 0; i < files.length; i++) {
file_container.innerHTML = file_container.innerHTML + `<a id="file${i}" href="#" class="list-group-item">${files[i]}</a>`;
document.getElementById('file' + i).onclick = (function (i) {
require('electron').remote.getGlobal('sharedObject').filename = files[i].replace('.tnb','');
window.location = "login.html";
})(i);
}
爲什麼我們需要IIFE呢? –
在訪問文件數組時保持對正確的'i'的引用 – nem035
onclick的第一個參數是事件,所以你不能只是把它傳遞給它 –