diff --git a/select2.js b/select2.js index 435e31aa..b0d09b83 100755 --- a/select2.js +++ b/select2.js @@ -195,13 +195,18 @@ * * @param quietMillis number of milliseconds to wait before invoking fn * @param fn function to be debounced + * @param thisobj object to be used as this reference within fn * @return debounced version of fn */ - function debounce(quietMillis, fn) { + function debounce(quietMillis, fn, thisobj) { + thisobj = thisobj || undefined; var timeout; return function () { + var args = arguments; window.clearTimeout(timeout); - timeout = window.setTimeout(fn, quietMillis); + timeout = window.setTimeout(function() { + fn.apply(thisobj, args); + }, quietMillis); }; }