在用户脚本中,尝试通过 onclick 属性调用函数会导致未捕获的引用错误:函数不是
传统的 onclick 属性行为(在脚本中定义函数)由于沙箱机制而无法在用户脚本中工作。
要解决此问题,请始终使用 addEventListener() 而不是 onclick
将 onclick 属性替换为:
document.getElementById("ElementID").addEventListener("click", functionName, false);
DOM 覆盖和事件处理程序
避免使用innerHTML或outerHTML覆盖多次 DOM 元素,因为它会删除现有的事件处理程序。
唯一 ID
确保每个元素都有唯一的 ID。重复使用 ID 会产生验证问题。
在此代码中,onclick 属性已替换为 addEventListener(),并且 DOM 覆盖问题已得到解决:
for (i = 0; i < EmoteURLLines.length; i++) { if (checkIMG (EmoteURLLines[i])) { emoteTab[2].innerHTML += '<span>
以上是为什么我的用户脚本的 onclick 属性会导致“未捕获的引用错误:函数未定义”?的详细内容。更多信息请关注PHP中文网其他相关文章!