未捕获的引用错误: 未定义单击世界 -- 未定义函数

Uncaught ReferenceError: clickWorld is not defined -- Function not defined?

本文关键字:未定义 单击 世界 函数 错误 引用      更新时间:2023-09-26

好的,所以我已经用javascript编码了大约3个小时,我已经准备好了。 它看起来很简单,但是,每当我运行并单击"Hello"时,我都会收到一条错误消息,说"未捕获的引用错误:未定义单击世界"。我做了一些谷歌搜索,发现了一些技巧,即windows.onload并将脚本标签直接放在/body之前。 两者都不是问题解决的。 我现在正在寻求其他帮助。 这是我的代码...

<!DOCTYPE html>
<html>
<head> 
</head>
<div id="javatest" onclick="clickWorld()">Hello</div>
<body>
<script type="text/javascript">
window.onload = function() {
function clickWorld()
    {
    alert("BANG");
    }
}
</script>
</body>
</html>

非常感谢您的帮助,因为在解决这个问题之前,我无法继续学习。 非常感谢!

看起来您正在尝试将匿名函数与 window.onload 一起使用,它应该像这样正确编写:

window.onload = function() {
    alert("BANG");
};

通过像这样把它放在window.onload里,你让它超出了范围——本质上你的div无法"看到"javascript。出于您的目的,您可能根本不希望 window.onload 在那里 - 这是不必要的。您在script标签中所需要的只是:

function clickWorld() {
    alert("BANG");
}

您还需要将divheadbody标签之间移动 - 它应该在body标签内。

如果您希望在 script 标签中有多个函数,只需像这样添加它们:

function someFunc1() {
    // Do stuff
}
function someFunc2() {
    // Do stuff
}

而不是

window.onload = function () {
    function clickWorld() {
        alert("BANG");
    }
}

function clickWorld() {
    alert("BANG");
}

此外,其他

将您的div 放入body,目前您的div 位于head部分

演示