【发布时间】:2010-12-29 05:19:43
【问题描述】:
是否可以选择元素的最后 5 个子 div?
【问题讨论】:
标签: jquery css-selectors
是否可以选择元素的最后 5 个子 div?
【问题讨论】:
标签: jquery css-selectors
可以,可以获取div元素,然后使用slice方法获取最后五个:
var e = $('#someelement > div').slice(-5);
【讨论】:
当然,您可以使用选择器的 .length 属性获取计数,然后使用 :gt(n) 选择器获取最后 5 个。
var o = $("div.container > div:gt("+($("div.container > div").length-5)+")");
【讨论】:
:gt() 选择器已被弃用。推荐.slice()
从 jQuery 1.8 开始,您可以在 :gt() 伪选择器中使用负值。
参考:https://api.jquery.com/gt-selector。
例如
var e = $('#someelement > div:gt(-6)');
JSFiddle: https://jsfiddle.net/TrueBlueAussie/g4drety2/3/
注意事项:
n+1
.slice(-5) 更快,因为 :gt 无法使用浏览器性能提升。【讨论】: