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');