2013-07-03 35 views
1

我正在嘗試將keydown事件與mousedown事件組合在一起。基本上,我有一個聊天對話框,如果用戶用2個div(keydown事件)中的一個寫入或者從兩個下拉列表(mousedown)中選擇一個(或兩個),我需要它們具有相同的確切功能。提前致謝。將mousedown事件與keydown事件相結合

代碼(被合併):

$('#usermsg').add('#otherComments').keydown(function() { // When key pressed 

$('#strategies').add('#whySwitch').mousedown(function() { // When mouse is clicked 
    //function body 
}); 

回答

1

編寫符合兩國div和調用它的函數,

$('#usermsg').add('#otherComments').keydown(functionToCall); 

$('#strategies').add('#whySwitch').mousedown(functionToCall); 

/不要忘記刪除()/

那麼函數的實現:

function functionToCall() { 
    //body 
} 
0

我不知道是否是正確的做法,但我每次做:

var keyPressed = new Object(); 
keyPressed.mouse = 0; 
keyPressed.keyboard = 0; 

一個事件到keydown和keyup,另一個去mouseup和mousedown

KeyDown和鼠標按下設置keyPressed.mouse或鍵盤1兩個事件KEYUP和MouseUp設置keyPressed.mouse或鍵盤0

鼠標按下和和的keydown會打電話給誰看的功能,如果鼠標和鍵盤來,做這兩個事件你想要的東西。

0

實現回調函數並在兩個事件中都將其名稱作爲回調函數參數。

0

爲什麼不

$('#usermsg').add('#otherComments').keydown(yourFunction); 

$('#strategies').add('#whySwitch').mousedown(yourFunction); 

然後

function yourFunction() { 
// do what you want 
} 

+0

這並不能解答這個問題。要批評或要求作者澄清,請在其帖子下方留言。 – mishik

+0

@mishik這個DO提供了一個正確的答案,檢查接受的答案,並與我的比較,我也寫了它,但沒有運氣 – vladkras