Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.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 keypress()是否仅在Firefox中聚焦文本字段时才会触发?_Javascript_Jquery_Html_Firefox - Fatal编程技术网

Javascript keypress()是否仅在Firefox中聚焦文本字段时才会触发?

Javascript keypress()是否仅在Firefox中聚焦文本字段时才会触发?,javascript,jquery,html,firefox,Javascript,Jquery,Html,Firefox,当在Chrome中按键而不是在Firefox中按键时,会弹出一个警报。但是,如果我创建一个文本字段并将其聚焦,然后按下一个键,Firefox中将弹出一个警报。(即使$('body')仍然是jQuery对象。) 即使文本字段未聚焦,我如何在Firefox中触发事件?有解决办法吗?当按下页面上任意位置的Enter键时,我将触发一个事件 谢谢各位如果页面上没有元素,浏览器可能会认为元素(或其任何子元素)没有焦点。尝试将事件绑定到文档: jQuery(document).ready(function (

当在Chrome中按键而不是在Firefox中按键时,会弹出一个警报。但是,如果我创建一个文本字段并将其聚焦,然后按下一个键,Firefox中将弹出一个警报。(即使$('body')仍然是jQuery对象。)

即使文本字段未聚焦,我如何在Firefox中触发事件?有解决办法吗?当按下页面上任意位置的Enter键时,我将触发一个事件


谢谢各位

如果页面上没有元素,浏览器可能会认为
元素(或其任何子元素)没有焦点。尝试将事件绑定到文档:

jQuery(document).ready(function ($) {
    $('body').keypress(function (e) {
        alert(e.which);
    });
});

@DarthJDG是对的,但如果您想在页面加载后立即监听按键,则仍应将焦点设置在窗口上。在某些情况下,浏览器会将焦点放在地址栏上。因此,请加上:

jQuery(document).ready(function ($) {
    $(document).keypress(function (e) {
        alert(e.which);
    });
});
设置按键处理程序后

$(window).focus();