问题:
单击带有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中文网其他相关文章!