Вот код jQuery / Javascript, который я использую для сортировки неупорядоченного списка элементов и удаления их по запросу пользователя:
// event binding for the search filter
$('.search-box').keyup(function(){
var query = $(this).val().toLowerCase(),
length = query.length;
$('.friends-list li').each(function(){
if(query.length > 1 && $(this).find('span').text().toLowerCase().substring(0, length) != query){
$(this).hide();
} else {
$(this).show();
}
});
});
К сожалению, когда я получаю большое количество liэлементы, это значительно замедляется и иногда зависает в системе.Есть ли способ оптимизировать это или выполнить сначала весь поиск, а затем удалить все элементы li одновременно, чтобы система не зависала?
Когда я выполняю поиск на стороне сервера, я могу простоиметь загрузочный счетчик и обратный вызов при успешном завершении, но, похоже, это не относится к клиентской части.