msi*_*sii 0 html jquery html5 sql-order-by
是否可以用jQuery重新排序某些div。我的div很少,我想根据div中的数据索引号在页面加载时对其重新排序。
现在:
<div class="score" data-index="3">3</div>
<div class="score" data-index="2">2</div>
<div class="score" data-index="1">1</div>
<div class="score" data-index="4">4</div>
Run Code Online (Sandbox Code Playgroud)
我想要的是:
<div class="score" data-index="1">1</div>
<div class="score" data-index="2">2</div>
<div class="score" data-index="3">3</div>
<div class="score" data-index="4">4</div>
Run Code Online (Sandbox Code Playgroud)
我相信使用jQuery应该有可能。我去每个div并获取数据索引号,但是如何实际排序:D
谢谢!
编辑:一件事是HTML的顺序可以在每次页面加载时变化(顺序可以为3、2、1、4或4、1、3、2或其他任何形式)。
这是我现在拥有的唯一JS:
$("html .score").each(function(index, domEle) {
var score = $(domEle).attr("data-index");
alert(score);
});
Run Code Online (Sandbox Code Playgroud)
只是得到数据索引号警报它。
的HTML
<div class="sortable">
<div class="score" data-index="3">3</div>
<div class="score" data-index="2">2</div>
<div class="score" data-index="1">1</div>
<div class="score" data-index="4">4</div>
</div>
Run Code Online (Sandbox Code Playgroud)
jQuery ---------升序
$('.sortable').each(function(){
var $this = $(this);
$this.append($this.find('.score').get().sort(function(a, b) {
return $(a).data('index') - $(b).data('index');
}));
});
Run Code Online (Sandbox Code Playgroud)
---------降序
$('.sortable').each(function(){
var $this = $(this);
$this.append($this.find('.score').get().sort(function(a, b) {
return $(b).data('index') - $(a).data('index');
}));
});
Run Code Online (Sandbox Code Playgroud)