为什么函数没有定义?

时间:2016-05-22 12:27:29

标签: javascript html

我有一个html5和javascript游戏如下:

<html>
<head>
    <title>Garrid Punching</title>
    <style>
        canvas {
            border: 1px solid black;
            background-color: black
        }
    </style>
    <script>
function answer(e) {
        if (e.keyCode === 13) { //enter key pressed
            alert("it worked")
        }
    }
</script>
</head>

<body onkeypress="return answer(event)">

<canvas width="1080" height="480" id="myCanvas"></canvas>


</body>
</html>

预计会发生这样的情况,当按下回车键时,Javascript接收该事件,然后将该密钥代码解释为等于13,使其发送一条警告,表示&#34;它工作正常&#34;。

然而,当我按下输入时没有任何反应,而是返回问题&#34;功能&#39;回答&#39;未定义&#34;在调试器中。

为什么会这样?

2 个答案:

答案 0 :(得分:3)

我在Chrome中尝试了这个,它的工作非常好。您使用什么浏览器来测试它?

尝试删除return关键字并立即调用该函数。

<body onkeypress="answer(event)">

答案 1 :(得分:0)

您的代码运行正常,请检查您的浏览器是否自动阻止JavaScript警报。

顺便说一句,你应该改变

<body onkeypress="return answer(event)">

<body onkeypress="answer(event)">