Order Divs基于Jquery中的属性值

Tal*_*lon 4 jquery

我有几个像这样的div

<div rel="5">
  Divs content goes here
</div>
<div rel="3">
   Div 3 Here
</div>
<div rel="4">
  Div 4 Here
 </div>
 <div rel="4.5">
   Div 4.5 here
</div>
Run Code Online (Sandbox Code Playgroud)

你将如何使用Jquery对div进行排序,以便在DOM中物理上使用最少的rel属性进行排序?

例如3,4,4.5,5

Dav*_*den 12

看我的小提琴:http://jsfiddle.net/6hpNz/8/

您可以使用javascript和jQuery的组合来轻松完成此操作:

给出以下HTML:

<div class="unsorted">
    <div rel="5">
      Div 5 here
    </div>
    <div rel="3">
       Div 3 Here
    </div>
     <div rel="4.5">
       Div 4.5 here
    </div>
    <div rel="4">
      Div 4 Here
     </div> </div>
<div class="sorted"></div>
Run Code Online (Sandbox Code Playgroud)

该脚本将为您提供所需的输出:

$(document).ready(function () {
    var sortedDivs = $(".unsorted").find("div").toArray().sort(sorter);
    $.each(sortedDivs, function (index, value) {
        $(".sorted").append(value);
    });
});

function sorter(a, b) {
    return a.getAttribute('rel') - b.getAttribute('rel');
};
Run Code Online (Sandbox Code Playgroud)