首页  >  文章  >  web前端  >  为什么我的 JavaScript 代码无法在 JSFiddle.net 上运行?

为什么我的 JavaScript 代码无法在 JSFiddle.net 上运行?

Patricia Arquette
Patricia Arquette原创
2024-10-31 22:38:28820浏览

Why is My JavaScript Code Not Working on JSFiddle.net?

JavaScript 无法在 JSFiddle.net 上运行

提供的代码可以在实时站点上运行,但无法在 JSFiddle.net 上运行,从而生成错误如“ReferenceError: fillList is not Defined”和“ReferenceError: mySelectList is not Defined”

说明:

发生错误是因为HTML中引用的函数(“fillList()”和“findIt()”)在“window.onload”函数中定义。在这种情况下,这些函数只能在 onload 函数中访问,不能作为全局变量引用。

解决方案:

要解决此问题,您有以下三种选择:

  1. 更改函数定义:

    • 将函数定义从“function blah(){}”修改为“window.blah” = 函数(){};”。这使得函数成为全局的并且可以通过 HTML 进行访问。
  2. 不显眼的 JavaScript:

    • 将 JavaScript 与 HTML 分开并仅通过 JavaScript 将事件处理程序附加到 DOM 元素。这消除了对全局函数的依赖。
  3. 调整 JSFiddle 设置:

    • 将 JSFiddle 设置更改为“不换行” (body 或 head)”,这会阻止 JSFiddle 将代码包含在 window.onload 函数中。

建议:

选项 b(不引人注目的 JavaScript)是推荐的方法,因为它遵循将 HTML 与逻辑分离的最佳实践。这提高了可维护性并提高了代码的可重用性。

以上是为什么我的 JavaScript 代码无法在 JSFiddle.net 上运行?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn