diff --git a/jquery.fastLiveFilter.js b/jquery.fastLiveFilter.js index 141448e..6592451 100644 --- a/jquery.fastLiveFilter.js +++ b/jquery.fastLiveFilter.js @@ -13,6 +13,7 @@ jQuery.fn.fastLiveFilter = function(list, options) { var input = this; var timeout = options.timeout || 0; var callback = options.callback || function() {}; + var markFiltered = options.markFiltered || 0; var keyTimeout; @@ -25,7 +26,7 @@ jQuery.fn.fastLiveFilter = function(list, options) { callback(len); // do a one-time callback on initialization to make sure everything's in sync input.change(function() { - // var startTime = new Date().getTime(); + //var startTime = new Date().getTime(); var filter = input.val().toLowerCase(); var li; var numShown = 0; @@ -35,16 +36,22 @@ jQuery.fn.fastLiveFilter = function(list, options) { if (li.style.display == "none") { li.style.display = oldDisplay; } + if (markFiltered) { + jQuery(li).attr('data-fastlivefilter-shown', '1'); + } numShown++; } else { if (li.style.display != "none") { li.style.display = "none"; } + if (markFiltered) { + jQuery(li).attr('data-fastlivefilter-shown', '0'); + } } } callback(numShown); - // var endTime = new Date().getTime(); - // console.log('Search for ' + filter + ' took: ' + (endTime - startTime) + ' (' + numShown + ' results)'); + //var endTime = new Date().getTime(); + //console.log('Search for ' + filter + ' took: ' + (endTime - startTime) + ' (' + numShown + ' results)'); return false; }).keydown(function() { // TODO: one point of improvement could be in here: currently the change event is