我想根据元素的标题/描述对列表进行排序。
根据第一个词,分配权重以稍后定义自定义订单。
从:
列表 4 200 中的第三个元素
列表 3 200 中的第一个元素
列表 3 200 中的第一个元素
列表 5 200 中的第四个元素
列表 2 200 中的第二个元素
列表 2 200 中的第二个元素
至:
列表 3 200 中的第一个元素
列表 3 200 中的第一个元素
列表 2 200 中的第二个元素
列表 2 200 中的第二个元素
列表 4 200 中的第三个元素
列表 5 200 中的第四个元素
我们未控制的任何标题将被分配一个预定的权重(最重),以便它出现在最后。
var list = $('.list');
var listItems = list.children('li').get();
$(listItems).each(function() {
var $this = $(this);
var description, focusDescription;
var weight;
description = $this.find('span.description a').text();
focusDescription = description.split(' ')[0];
switch (focusDescription) {
case 'First':
weight = 1;
// code block logic
break;
case 'Second':
weight = 2;
// code block logic
break;
case 'Third':
weight = 3;
// code block logic
break;
case 'Fourth':
weight = 4;
// code block logic
break;
default:
weight = 5;
// code block logic
}
});
listItems.sort(function(a, b) {
// code block logic
})
$.each(listItems, function(idx, itm) {
list.append(itm);
});
MMMHUHU
相关分类