を使用して、チェックされたアイテムをリストの一番上に移動するソリューションを実装しました
これで、リスト内のすべての項目のチェックを外すためのアンカーができました。アンカー タグをクリックすると、項目のチェックが解除されます。しかし、アイテムはソートされていません。HTMLリストのように、デフォルトで最初に表示されるリストにする必要があります。
var list = $("ul"),
origOrder = list.children();
list.on("click", ":checkbox", function () {
var i, checked = document.createDocumentFragment(),
unchecked = document.createDocumentFragment();
for (i = 0; i < origOrder.length; i++) {
if (origOrder[i].getElementsByTagName("input")[0].checked) {
checked.appendChild(origOrder[i]);
} else {
unchecked.appendChild(origOrder[i]);
}
}
list.append(checked).append(unchecked);
});
シナリオのデモは、 http://jsfiddle.net/RPN3x/にあります。