У меня проблема при использовании плагина jQuery tablesorter, и я не могу дважды вызвать триггер.
Например, это не сработает:
this._$table.trigger('update');
this._$table.trigger('sorton', [[[1,1]]]);
Но это работает:
this._$table.trigger('update');
setTimeout($.proxy(function() {
this._$table.trigger('sorton', [[[1,1]]]);
}, this), 1);
А потом я вижу, что проблема была в триггере "обновление", он вызывает метод с телом:
function () {
var me = this;
setTimeout(function () {
// rebuild parsers.
me.config.parsers = buildParserCache(
me, $headers);
// rebuild the cache map
cache = buildCache(me);
}, 1);
}
Почему разработчик tablesorter использовал setTimeout
с одной миллисекундой?