如果我有几个div:
<div data-sort='1'>div1</div>
<div data-sort='4'>div4</div>
<div data-sort='8'>div8</div>
<div data-sort='12'>div12</div>
<div data-sort='19'>div19</div>
我动态创建了这些 div:
<div data-sort='14'>div1</div>
<div data-sort='6'>div1</div>
<div data-sort='9'>div1</div>
如何让它们只按照已经加载的div的顺序进行排序,而无需重新加载所有的div?
我认为我需要构建一个包含屏幕上所有div的data-sort值的数组,然后查看新div适合哪个位置,但我不确定这是否是最好的方法。
.attr('data-sort')
而不是.data('sort')
。如果页面上的 data-sort 值在动态更新,则 attr('data-sort') 仍将使用原始值。 - apb.attr
进行设置,然后尝试使用.data
进行访问,这是两个不同的东西。 - apb$("#allTerms>ul").sort(function(a, b) { var contentA = parseInt($(a).attr('data-sort')); var contentB = parseInt($(b).attr('data-sort')); return (contentA < contentB) ? -1 : (contentA > contentB) ? 1 : 0; }).appendTo($("#allTerms"));
- Magali