jQuery: задержать вызов события в виджете - PullRequest
0 голосов
/ 26 июня 2011

Не могу узнать, как отложить обработчик событий для виджета.Я связываю событие так:

enable: function () {
    this.options.isEnabled = true;
    this.element.bind("keyup", $.proxy(this, "_populateList"));
},

Я хочу вызвать "_populateList" с задержкой.но мои попытки с setTimeout не работают.

"_populateList":

_populateList: function (event) {
    var that = this;
    // do my stuffs
}

Спасибо

1 Ответ

1 голос
/ 26 июня 2011

Попробуйте это:

enable: function () {
    this.options.isEnabled = true;
    var that = this;
    this.element.bind("keyup", function(event){
       $(this)
          .delay(1000) // delayed time in milliseconds
          .queue(function(next){
             that._populateList(event);
             next();
          });
    });
},
...