我使用tinySort来过滤动态创建的子div,这非常好。不过,我也想限制子代的数量后排序。例如..。只有前5个排序的div。
这是我用来排序的当前代码。
tinysort("#results > div", {
order: "desc",
attr: 'id'
}); 我想用这样的if (($this).children().length < 5)
但是,我不知道如何将它合并到tinySort中,或者这个功能是否已经存在?
如有任何建议或帮助,敬请见谅。
DOM结构:
<div id="results" class="results">
<div id="205" class="results-section">
<div class="details">
<h2>115</h2>
</div>
<div id="time">
<h3>7</h3>
<small>minutes</small>
</div>
</div>
<div id="196" class="results-section">
<div class="details">
<h2>115</h2>
</div>
<div id="time">
<h3>7</h3>
<small>minutes</small>
</div>
</div>
<div id="180" class="results-section">
<div class="details">
<h2>115</h2>
</div>
<div id="time">
<h3>7</h3>
<small>minutes</small>
</div>
</div>
</div>发布于 2015-05-23 21:58:30
在我看来,你能做的最好的就是在排序后隐藏元素。就像这样
$('#results > div').tsort({
order: "desc",
attr: 'id'
}).filter(function (i, el) {
return i > 4; // this way if the other elements need some other style
}).hide();下面是一个示例http://jsfiddle.net/dhirajbodicherla/9VT8g/23/
甚至更简单
$('#results > div').tsort({
order: "desc",
attr: 'id'
}).slice(5).hide(); // strictly hide rest except first 5第二次演示http://jsfiddle.net/dhirajbodicherla/9VT8g/24/
https://stackoverflow.com/questions/30417782
复制相似问题