(對不起,如果問題已經存在)使用數據ID的jQuery排序元素
我對jQuery開發很新。
我有HTML結構如下:
<div class="clist">
<div data-sid=1></div>
<div data-sid=2></div>
<div data-sid=2></div>
<div data-sid=1></div>
<div data-sid=2></div>
<div data-sid=2></div>
<div data-sid=1></div>
</div>
我想作爲對它們進行排序:
<div class="clist">
<div data-sid=1></div>
<div data-sid=1></div>
<div data-sid=1></div>
<div data-sid=2></div>
<div data-sid=2></div>
<div data-sid=2></div>
<div data-sid=2></div>
</div>
我使用的功能
function sortContacts() {
var contacts = $('div.clist'), cont = contacts.children('div');
cont.detach().sort(function(a, b) {
var astts = $(a).data('sid');
var bstts = $(b).data('sid')
//return astts - bstts;
return (astts > bstts) ? (astts > bstts) ? 1 : 0 : -1;
});
contacts.append(cont);
}
但它無法正常工作如預期的那樣。
它第一次運行良好,但是當添加新元素或更改data-sid時,它不起作用。
編輯:
演示
不工作?
我想換 – user1834809
你可以使用tinysort元素(http://tinysort.sjeiti.com /) –