jQuery - div上的keydown()无法在Firefox中运行

Way*_*rts 38 firefox jquery events internet-explorer keydown

我有以下示例代码,当div处于焦点并按下某个键时,它会弹出警报.这符合我在IE 7中所期望的,但在Firefox 3.5.5中却没有.我究竟做错了什么?

<html>
<head>
    <title>JS test</title>
    <script type="text/javascript" src="jquery-1.3.2.min.js"></script>
    <script type="text/javascript">
        $(document).ready(function() {
            $("#testdiv").keydown(function(event) {
                alert("Pressed " + event.keyCode);
            });
        });
    </script>    
    <style type="text/css">
        #testdiv
        {
            width: 50;
            height: 50;
            background-color: red;
        }
    </style>
</head>
<body>
    <div id="testdiv"></div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

编辑:我只是试着更换keydownkeypresskeyup和那些不工作的.顺便说一句,我还确保我的"按键同时查找"设置是关闭以防万一.

Ric*_*ide 114

你需要给div一个tabindex,以便它可以获得焦点.

<div id="testdiv" tabindex="0"></div>
Run Code Online (Sandbox Code Playgroud)

  • 只需一个`tabindex`就可以保存我的一天. (6认同)