Я сортирую список
элементов. Я адаптировал функцию на странице, на которую сейчас не могу ссылаться. Вы можете увидеть живой сайт
здесь . Нажмите «Сортировка и фильтрация» и выберите любой из методов сортировки (английское имя, материал, статус ...). Все виды по сути одинаковы, поэтому процессорное время одинаковое.
Моя функция jQuery выглядит так:
jQuery.fn.sort = function() {
return this.pushStack([].sort.apply(this, arguments), []);
};
function sortAscending1(a, b) { return $(a).find(".english").text() > $(b).find(".english").text() ? 1 : -1; };
function sortDescending1(a, b) { return $(a).find(".english").text() < $(b).find(".english").text() ? 1 : -1; };
И я звоню из следующей строки jQuery (s_alf_eng - это интерактивный div на странице).
$(document).ready(function() {
$(".s_alf_eng").toggle(
function() {
$('.media-status-specie li').sort(sortAscending1).appendTo('.media-status-
},
function() {
$('.media-status-specie li').sort(sortDescending1).appendTo('.media-status-specie');
});
Я могу дать любые дополнительные разъяснения быстро.
Спасибо!
EDIT: Вопрос заключается в том, что выполнение этого вида для большого списка занимает несколько секунд. В моем core2duo это может занять до 20 секунд! Я изменил поиск (". English") на фильтр (". English"), и скорость, кажется, такая же. Любая идея о том, как ускорить это?