Javascript 按子div的ID排序div
我有一个文件递归地回显以下HTML多次(例如3次)Javascript 按子div的ID排序div,javascript,jquery,Javascript,Jquery,我有一个文件递归地回显以下HTML多次(例如3次) … 2042 … 我想根据.viewers标记的id来订购这些main.container div(正如您所看到的,它被设置为复制实际的查看器计数) 有人能帮我吗?如果所有这些元素都在一个容器元素下,那么 var els = $('#myct > .container').get(); els.sort(function (o1, o2) { return $.trim($(o1).find('.viewers').tex
…
2042
…
我想根据.viewers标记的id来订购这些main.container div(正如您所看到的,它被设置为复制实际的查看器计数)
有人能帮我吗?如果所有这些元素都在一个容器元素下,那么
var els = $('#myct > .container').get();
els.sort(function (o1, o2) {
return $.trim($(o1).find('.viewers').text()).localeCompare($.trim($(o2).find('.viewers').text()))
});
$('#myct').append(els)
演示:这似乎工作正常:
var $divs = $(".container");
[].sort.call($divs, function(a, b) {
return $(a).find(".viewers").attr("id") -
$(b).find(".viewers").attr("id");
});
$divs.parent().append($divs);
演示:
也就是说,选择所有的
容器
元素,使用将它们按照它们自己的查看器
元素的id属性的顺序排列(这里我假设只有数字id-对于字母排序,显然不能只减去id),然后使用在它们的父元素中移动它们。当然,我假设它们有一个共同的父元素。是否所有这些元素都在容器元素中?
var $divs = $(".container");
[].sort.call($divs, function(a, b) {
return $(a).find(".viewers").attr("id") -
$(b).find(".viewers").attr("id");
});
$divs.parent().append($divs);