2012-09-14 29 views
1

我有這樣的代碼是在一個循環的中間:如何爲jQuery.trigger()定義回調?

$('input[name="field_add_more"]').trigger('mousedown'); 
mycustomfunction(); 

mycustomfunction();並不總是執行。我需要將這個回調爲.trigger(),但我無法弄清楚如何執行此操作,並且在jQuery上沒有關於它的文檔。這可以做到嗎?

我真的不希望對它使用setTimeout。它也必須是一個.trigger()它的工作。綁定'click'不起作用。

任何想法,我可以做到這一點?我試過以下但它不起作用:

$('input[name="field_add_more"]').trigger('mousedown', function() { 
    mycustomfunction(); 
}); 
+0

所以要觸發鼠標按下EV然後在事件處理後調用你的函數? –

+0

是的,打電話給我的事件後,mousedown事件已完全完成:) – Nadine

回答

2
$('input[name="field_add_more"]').mousedown(mycustomfunction).mousedown(); 
2

.trigger()火災事件你把。所以需要以平常一樣的方式傾聽事件。

所以在使用之前使用它。

$('input[name="field_add_more"]').mousedown(mycustomfunction); 
0

試試這個

要觸發鼠標按下事件中使用

$('input[name="field_add_more"]').trigger('mousedown','mycustomfunction'); 

要綁定鼠標按下使用

$('input[name="field_add_more"]').bind('mousedown', function(e,callback) 
{ 
    .... 
    var fn = window[callback]; 
    if(typeof fn === 'function') fn(); 
});