javascript - window.addEventListener ("load"中的 Javascript 函数,function() 未定义 - 为什么?

标签 javascript

我有一个名为 Notice() 的非常简单的 Javascript 函数。我只想在页面加载后访问它(Notice() 函数使用一些其他变量,这些变量仅在页面加载完成后可用)。错误是 - “Notice() 函数未定义。” 为什么未定义它以及如何确保它已定义并在包含 window.addEventListener("load",function() 函数时正常工作?

整个代码在下面,JS fiddle 在这里:https://jsfiddle.net/2cymjn8z/

<button id="L" type="button" onclick="Notice()">Submit</button>

  window.addEventListener("load",function(){

function Notice(){
alert('ok');
}

},false);

最佳答案

如果您可以控制创建按钮的 html,则可以消除显式的 onClick 事件并在加载窗口后通过 js 添加它:

window.addEventListener("load", function () {
  window.Notice = function () {
    alert('ok');
  }
  document.getElementById("L").onclick = Notice()
}, false);

关于javascript - window.addEventListener ("load"中的 Javascript 函数,function() 未定义 - 为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48118810/

相关文章:

javascript - 使用 Charts Js 在 Lightning Web 组件中将数据从父级传递到子级

javascript - 与js中的__proto_和prototype混淆

javascript - 我们如何获取 extjs 树中选择节点的索引?

javascript - 获取 "error: invalid regular expression"

javascript - gulp中解析多个文件生成一个文件

javascript - bool 参数未正确传递

javascript - 使用 jQuery 提交任何输入更改的表单

javascript - 隐藏 CSS 滚动条,直到满足最大宽度和最大高度条件

javascript - 动态改变元素的类

javascript - 单页 Web 应用程序问题