Jquery:不同的单击并输入处理程序
有一个按钮。我想检测用户是单击了它还是按了enter键,并根据发生的事件执行相应的操作。但是,当我按enter键时,click和enter处理程序都会被执行 我怎样才能解决这个问题 HTML:Jquery:不同的单击并输入处理程序,jquery,html,button,jquery-click-event,Jquery,Html,Button,Jquery Click Event,有一个按钮。我想检测用户是单击了它还是按了enter键,并根据发生的事件执行相应的操作。但是,当我按enter键时,click和enter处理程序都会被执行 我怎样才能解决这个问题 HTML: <button type="button"> Click me </button> $("button").keydown(function(e){ var keyCode = e.keyCode || e.which; if(keyCode === 13){
<button type="button">
Click me
</button>
$("button").keydown(function(e){
var keyCode = e.keyCode || e.which;
if(keyCode === 13){
$("button").after("<div> enter was pressed </div>");
}
})
$("button").click(function(){
$("button").after("<div> click event </div>");
})
点击我
Jquery:
<button type="button">
Click me
</button>
$("button").keydown(function(e){
var keyCode = e.keyCode || e.which;
if(keyCode === 13){
$("button").after("<div> enter was pressed </div>");
}
})
$("button").click(function(){
$("button").after("<div> click event </div>");
})
$(“按钮”).keydown(功能(e){
var keyCode=e.keyCode | | e.which;
如果(键代码===13){
$(“按钮”)。之后(“按回车键”);
}
})
$(“按钮”)。单击(函数(){
$(“按钮”)。之后(“单击事件”);
})
改用按键
:
$(document).keypress(function(e) {
var keyCode = e.keyCode || e.which;
if(keyCode === 13){
$("button").after("<div> enter was pressed </div>");
}
});
$("button").click(function(){
$(this).blur().after("<div> click event </div>");
})
$(文档)。按键(功能(e){
var keyCode=e.keyCode | | e.which;
如果(键代码===13){
$(“按钮”)。之后(“按回车键”);
}
});
$(“按钮”)。单击(函数(){
$(this).blur().after(“单击事件”);
})
希望这有帮助
$(文档)。按键(功能(e){
var keyCode=e.keyCode | | e.which;
如果(键代码===13){
$(“按钮”)。之后(“按回车键”);
}
});
$(“按钮”)。单击(函数(){
$(this).blur().after(“单击事件”);
})
点击我
看
使用e.preventDefault()代码>你可以做到。
干杯感谢您的回复!除了第一次有人按enter键外,这一切都很好。不客气,很高兴我能帮助您,这是第一次您只需关注文档,因为事件附加到文档
,所以只需单击页面内的任意位置,然后单击enter。感谢您的回复。我在某个地方读到,使用preventDefault()不是一个很好的选择,因为我可能会导致问题。是这样吗?