我有一个元素列表:
<div class="wrapper">
<div class="abc"></div>
<div class="abc"></div>
<div class="abc"></div>
</div>
我有一个由数字组成的数组,它代表了新的顺序:
var arr = [2,1,0];
我想重新定位这些abc div到父包装器内的新位置。
重要的是,这些abc div有事件和数据附加到它们上面,需要保留!
我已经想出了以下解决方案,并且似乎按预期工作:
var wrapper = $('.wrapper'), items = wrapper.children('div.abc');
var orderedItems = $.map(arr, function(value) {
return $(items).clone(true,true).get(value);
});
wrapper.empty().html(orderedItems);
我想确认这是正确的方法。
如果可能的话,我也可以使用JavaScript解决方案。
order
进行重新排序:http://www.w3schools.com/cssref/css3_pr_order.asp - RobertAKARobin