0

我将这段代码嵌入了我的 js 文件以关闭 win 键。此代码:

jQuery(document).keydown(function(e){
    alert(e.keyCode); // replace "37" below with the windows key code
    if (e.keyCode == 37) { 
       alert( "windows key pressed" );
       return false;
    }
});

工作很好。但我只想工作 1 div。我怎样才能做到这一点?

4

5 回答 5

3

改变:

jQuery(document).keydown(function(e) {

jQuery("#myElement").keydown(function(e) {

#myElement的. id_div

于 2012-05-15T07:41:07.923 回答
2

使用您的 div 选择器而不是document选择器。

jQuery("#yourdivid").keydown(function(e){
    alert(e.keyCode); // replace "37" below with the windows key code
    if (e.keyCode == 37) { 
       alert( "windows key pressed inside div" );
       return false;
    }
});

要禁用 div,您可以简单地使用$("#yourdivid").prop('disabled', true);

于 2012-05-15T07:41:08.503 回答
1

您应该指定您希望它处理的 div:

jQuery("#theIdOfTheDiv").keydown(function(e){ 
    alert(e.keyCode); // replace "37" below with the windows key code 
    if (e.keyCode == 37) {  
       alert( "windows key pressed" ); 
       return false; 
    } 
}); 

将 'theIdOfTheDiv' 更改为您的 div 的名称。

于 2012-05-15T07:41:52.803 回答
1

添加选择器而不是文档

jQuery('selector')代替jQuery(document)

其中选择器可以是 id、class 等

使用选择器作为 id 的演示

另一个 Demo仅适用于 div 内的一个输入。

Div Demo仅适用于第一个 div

Disabled for Div仅适用于 span 不适用于 div

如果它们不在div 中,则禁用 div 中的输入将适用于所有输入

于 2012-05-15T07:44:22.913 回答
1

给你的 div 一个 ID。例如

<div id="testdiv" tabindex="0"></div>

现在编写代码将 keydown 事件绑定到它,文档准备好

$(document).ready(function() {
            $("#testdiv").keydown(function(e) {

                if (e.keyCode == 37) { 
                alert( "windows key pressed" );
                return false;
                }
            });
        });

但请记住为 DIV 分配一个 tabindex,它可以是任何数字

于 2012-05-15T07:55:49.570 回答