Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript键控不';我不能单独工作_Javascript_Jquery_Keydown - Fatal编程技术网

Javascript键控不';我不能单独工作

Javascript键控不';我不能单独工作,javascript,jquery,keydown,Javascript,Jquery,Keydown,我有以下代码: document.addEventListener("keydown", keyDownTextField, false); function keyDownTextField(e) { var keyCode = e.keyCode; if(keyCode==13) { alert("You hit the enter key."); } else { alert("Oh no you didn't."); } } $(document).keydown

我有以下代码:

document.addEventListener("keydown", keyDownTextField, false);

function keyDownTextField(e) {
var keyCode = e.keyCode;
  if(keyCode==13) {
  alert("You hit the enter key.");
  } else {
  alert("Oh no you didn't.");
  }
}
$(document).keydown(function(e){
    if (e.keyCode == 37) { 
       alert( "left pressed" );
       return false;
    }
});
如果我把它粘贴到模板中,效果会很好,但是如果我把它放在外部文件中,它就不起作用了。尽管外部文件中的所有其他javascript都可以正常工作,但我也尝试了以下代码:

document.addEventListener("keydown", keyDownTextField, false);

function keyDownTextField(e) {
var keyCode = e.keyCode;
  if(keyCode==13) {
  alert("You hit the enter key.");
  } else {
  alert("Oh no you didn't.");
  }
}
$(document).keydown(function(e){
    if (e.keyCode == 37) { 
       alert( "left pressed" );
       return false;
    }
});
但同样的故事。我做错了什么?

似乎解决了你的问题

简而言之:将eventListener添加到文档的时间很重要。
应该在windows上应用它。onload

您可能正在尝试在DOM中存在元素之前附加事件侦听器。将引用外部JS文件的
元素放在
前面,如果另一个答案回答了这个问题,那么它是一个重复的问题,应该关闭。如果您要求提供回答问题所需的更多信息,那么在您有足够的代表发表评论之前,您的运气不佳:)