在使用者腳本中,嘗試透過onclick 屬性呼叫函數會導致未完成捕獲的引用錯誤:函數不是
傳統的onclick 屬性行為(在腳本中定義函數)由於沙箱機製而無法在使用者腳本中運作。
要解決此問題,請始終使用 addEventListener() 而不是 onclick
將 onclick屬性替換為:
document.getElementById("ElementID").addEventListener("click", functionName, false);
DOM 覆蓋和事件處理程序
避免使用innerHTML或outerHTMLMLMDOM 元素,覆蓋多次因為它會刪除現有的事件處理程序。
唯一 ID
確保每個元素都有唯一的 ID。重複使用 ID 會產生驗證問題。
在此程式碼中,onclick 屬性已替換為 addEventListener(),並且 DOM 覆蓋問題已解決:
for (i = 0; i < EmoteURLLines.length; i++) { if (checkIMG (EmoteURLLines[i])) { emoteTab[2].innerHTML += '<span>
以上是為什麼我的使用者腳本的 onclick 屬性會導致「未捕獲的引用錯誤:函數未定義」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!