如何为jquery .trigger()定义回调?

时间:2012-09-14 09:30:19

标签: jquery callback

我的代码位于循环中间:

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

mycustomfunction();并不总是执行。我需要将其移动到.trigger()的回调中,但我无法弄清楚如何执行此操作,并且在jQuery上没有关于它的文档。可以这样做吗?

我真的不想在它上面使用setTimeout。它也可以成为一个.trigger()。绑定'click'不起作用。

我有什么想法可以做到这一点?我尝试了以下但是它不起作用:

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

3 个答案:

答案 0 :(得分:2)

.trigger()会触发您放置的事件。因此需要以与往常一样的方式倾听事件。

在开火之前使用。

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

答案 1 :(得分:2)

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

答案 2 :(得分:0)

试试这个

要触发mousedown事件,请使用

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

绑定mousedown使用

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