我有一个正在显示的用户列表。我的问题是,我如何按字母顺序对它们进行排序,但要以在线状态组的形式进行排序。
基本上我希望首先显示在线的用户,其次是离开的用户,最后是离线的用户。我希望按字母顺序对这些组中的每一个进行排序。我的用户列表如下所示:
<ul>
<li data-uid="x" data-status="away">John</li>
<li data-uid="x" data-status="online">Tom</li>
<li data-uid="x" data-status="online">Mary</li>
<li data-uid="x" data-status="offline">Xiang</li>
<li data-uid="x" data-status="away">Chris</li>
<li data-uid="x" data-status="offline">Peter</li>
<li data-uid="x" data-status="online">Matt</li>
</ul>
我希望它们像这样排序:
<ul>
<li data-uid="x" data-status="online">Mary</li>
<li data-uid="x" data-status="online">Matt</li>
<li data-uid="x" data-status="online">Tom</li>
<li data-uid="x" data-status="away">Chris</li>
<li data-uid="x" data-status="away">John</li>
<li data-uid="x" data-status="offline">Peter</li>
<li data-uid="x" data-status="offline">Xiang</li>
</ul>
我已经尝试使用这个答案作为我的起点,但我无法将它们分组排序..
谢谢
编辑:
此外,我正在使用 ajax 获取实时状态更新。我不确定这会如何影响功能,但也许以后可以只针对特定用户并相应地移动他?..