問題:
按一下帶有onclick 屬性時,錯誤「Uncaught ReferenceError:函數未定義」發生。
原因:
使用者腳本在隔離環境中運行,其中 onclick 在目標頁面範圍內運行。因此,onclick 無法存取使用者腳本中定義的函數。
解:
避免使用 onclick 並使用 addEventListener() 取代。例如:
emoteTab[2].innerHTML += '<span>
更新的程式碼:
for (i = 0; i < EmoteURLLines.length; i++) { if (checkIMG (EmoteURLLines[i])) { localStorage.setItem ("nameEmotes", JSON.stringify (EmoteNameLines)); localStorage.setItem ("urlEmotes", JSON.stringify (EmoteURLLines)); localStorage.setItem ("usageEmotes", JSON.stringify (EmoteUsageLines)); if (i == 0) { console.log (resetSlot ()); } emoteTab[2].innerHTML += '<span>
var targetSpans = emoteTab[2].querySelectorAll ("span[data-usage]"); for (var J in targetSpans) { targetSpans[J].addEventListener ("click", appendEmote, false); }
其他警告:
以上是為什麼 Onclick 屬性會出現'未捕獲的引用錯誤:函數未定義”,如何修復?的詳細內容。更多資訊請關注PHP中文網其他相關文章!