jQuery:如何使键盘事件在点击事件上一起做同样的事情

时间:2013-05-19 02:26:21

标签: javascript jquery

我需要点击事件和向右箭头制作相同的事件

所以不要重复这段代码

$('#foo').on('click',function() {
    //do something
});

$(document).keydown(function(e){
   if (e.keyCode == 39) {
    //do the same thing above
   }
});

我该怎么做?

谢谢你:)

3 个答案:

答案 0 :(得分:3)

同时调用相同的函数,或者在keydown中调用

$('#foo').trigger('click');

答案 1 :(得分:3)

让它们都触发相同的功能。

$('#foo').on('click', CoolFunction);

$(document).keydown(function(e){
   if (e.keyCode == 39) {
    CoolFunction();
   }
});

function CoolFunction() {
  //same thing
}

答案 2 :(得分:1)

使用内置的javascript,因此两者都具有相同的上下文。不要使用触发器,它有副作用。

$('#foo').on('click', commonFn);

$(document).keydown(function(){
   if (e.keyCode == 39) {
    commonFn.apply(this,arguments);
   }
});

function commonFn() {
  //same thing
}