Javascript jquery:如何按数据对div进行排序:得到不好的结果
我想按用户名排序:Javascript jquery:如何按数据对div进行排序:得到不好的结果,javascript,jquery,Javascript,Jquery,我想按用户名排序: <div id="listPerformers"> <div class="performer" data-username="lula">lula</div> <div class="performer" data-username="hotesse1">hotesse1 </div> <div class="performer" data-username="marina">marina&
<div id="listPerformers">
<div class="performer" data-username="lula">lula</div>
<div class="performer" data-username="hotesse1">hotesse1 </div>
<div class="performer" data-username="marina">marina</div>
<div class="performer" data-username="sabrina">sabrina</div>
<div class="performer" data-username="aaa">aaa</div>
<div class="performer" data-username="hotesse2" >hotesse2 </div>
<div class="performer" data-username="julia">julia</div>
<div class="performer" data-username="misssexy">misssexy</div>
<div class="performer" data-username="guitarreblack">guitarreblack</div>
<div class="performer" data-username="blacklove">blacklove</div>
<div class="performer" data-username="ddd">ddd</div>
<div class="performer" data-username="eee">eee</div>
<div class="performer" data-username="anna">anna</div>
</div>
问题是:分类不正确:
朱莉娅
安娜
排名第一 您的排序功能不正确。如果
大于
,小于
或等于
,则需要从比较函数返回正值
,负值
或零
值
$('.performer').sort(function(a,b){
if(a.dataset.username < b.dataset.username) return -1;
if(a.dataset.username > b.dataset.username) return 1;
return 0;
}).appendTo('#listPerformers');
$('.performer').sort(函数(a,b){
如果(a.dataset.usernameb.dataset.username)返回1;
返回0;
}).appendTo(“#listPerformers”);
$(“.performer”)
.sort(函数(p,c){
返回(p.dataset.username>c.dataset.username)-(p.dataset.username
卢拉
酒店1
玛丽娜
萨布里娜
aaa
酒店2
朱莉娅
迷恋
吉他黑色
黑爱
ddd
eee
安娜
请参见
$('.performer').sort(function(a,b){
if(a.dataset.username < b.dataset.username) return -1;
if(a.dataset.username > b.dataset.username) return 1;
return 0;
}).appendTo('#listPerformers');