我需要點擊事件和右箭頭做出同樣的事件jQuery的:如何使鍵盤事件做同樣的單擊事件一起
所以不是這種重複的代碼
$('#foo').on('click',function() {
//do something
});
$(document).keydown(function(e){
if (e.keyCode == 39) {
//do the same thing above
}
});
我應該如何做它?
謝謝:)
我需要點擊事件和右箭頭做出同樣的事件jQuery的:如何使鍵盤事件做同樣的單擊事件一起
所以不是這種重複的代碼
$('#foo').on('click',function() {
//do something
});
$(document).keydown(function(e){
if (e.keyCode == 39) {
//do the same thing above
}
});
我應該如何做它?
謝謝:)
讓他們都觸發相同的功能。
$('#foo').on('click', CoolFunction);
$(document).keydown(function(e){
if (e.keyCode == 39) {
CoolFunction();
}
});
function CoolFunction() {
//same thing
}
+1,因爲這是工作,但你失去了'this'參考,所以我會用'觸發器()' –
兼得調用同一個函數,或者在的keydown,你可以做
$('#foo').trigger('click');
使用內置的JavaScript,所以兩者都有相同的上下文。不要使用觸發器,它有副作用。
$('#foo').on('click', commonFn);
$(document).keydown(function(){
if (e.keyCode == 39) {
commonFn.apply(this,arguments);
}
});
function commonFn() {
//same thing
}
他們都分配到相同的功能 –