排序代码中的错误在哪里? [英] Where is the Error in sorting code
本文介绍了排序代码中的错误在哪里?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
大家请帮助我找不到错误
Hey everybody please help I can't find the error
当我按排序......它一次又一次地排序
when I press sort...it sort again and again forever
html:
html:
<div class="unsorted">
<div class="labelimagediv" rel="5">
Div 5 here
</div>
<div class="labelimagediv" rel="3">
Div 3 Here
</div>
<div class="labelimagediv" rel="4.5">
Div 4.5 here
</div>
<div class="labelimagediv" rel="4">
Div 4 Here
</div> </div>
<button class="btnSort">Sort</button>
javascript:
javascript:
$("button.btnSort").click(function () {
var item1 = $('div.labelimagediv')[0];
var sortedDivs = $(".unsorted").find(item1).toArray().sort(sorter);
$.each(sortedDivs, function (index, value) {
$(".unsorted").append(value);
});
});
function sorter(a, b) {
return a.getAttribute('rel') - b.getAttribute('rel');
};
推荐答案
这是因为您正在通过选择第一个元素 $('div.labelimagediv')[0];
,试试这个:
That's because you are sorting one element by selecting the first element $('div.labelimagediv')[0];
, try this:
$("button.btnSort").click(function () {
$('div.labelimagediv').sort(function(a, b) {
return a.getAttribute('rel') > b.getAttribute('rel');
}).appendTo(".unsorted");
});
JsFiddle fork here
这篇关于排序代码中的错误在哪里?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文