以下是一个简单的排序,它将从低到高排序。
$('button').click(function() {
$('li').tsort();
});
当再次按下按钮时,我需要一个从高到低再到原始顺序的方法。
想想维基百科上的表头列。
我原来的计划是为点击次数存储一个变量。使用jQuery有更优雅的方法吗?
我无法理解TinySort如何记住原始订单,但查看文档(http://tinysort.sjeiti.com/)似乎有一个自定义函数来返回原始订单。有人能告诉我一个例子吗?
答案 0 :(得分:1)
如果您的意思是“原始”参数,那么您就会误解。如果选择是子选择,那么这是一个布尔值并进行排序。 (所以这只适用于您在20个项目列表中排序10个项目,将未分类的项目保留在原始位置)。
您要做的是首先创建一个jQuery对象来存储订单。 然后排序但使用新的jQuery对象。 然后用第一个替换内容。
var $Parent = $('ul')
,$Original = $Parent.find('li')
,isSorted = false
,$Button = $('button').click(function() {
if (isSorted) {
$Original.appendTo($Parent);
isSorted = false;
} else {
$Parent.find('li').tsort();
isSorted = true;
}
});
我还没有测试过代码,但这就是我的方法。 (哦..这只适用于单个无序列表)
克
罗恩