2016-05-22 5 views
1

У меня есть HTML5 и игру яваскрипта следующим образом:Почему функция не определена?

<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, в результате чего его для отправки предупреждения, в котором говорится: «Это сработало».

Однако, когда я нажимаю ввод, ничего не происходит, и вместо этого он возвращает проблему «функция» «не определена» в отладчике.

Почему это так?

+1

нет никаких проблем с кодом, как вы можете увидеть здесь: https://jsfiddle.net/44nqsepq/ –

ответ

4

Я пробовал это в Chrome и работает абсолютно нормально. Какой браузер вы используете для проверки этого?

Попробуйте удалить ключевое слово return и сразу же вызвать функцию.

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

Ваш код работает нормально, проверьте, не заблокирован ли ваш браузер автоматически оповещениями о JavaScript.

BTW, вы должны изменить

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

Для

<body onkeypress="answer(event)"> 
Смежные вопросы