web-dev-qa-db-fra.com

Sélectionnez les 5 derniers éléments avec jQuery

Est-il possible de sélectionner les 5 dernières divisions enfant d'un élément?

83
Adam

Oui, vous pouvez obtenir les éléments div, puis utiliser la méthode slice pour obtenir les cinq derniers:

var e = $('#someelement > div').slice(-5);
168
Guffa

Bien sûr, vous pouvez utiliser la propriété .length D'un sélecteur pour obtenir le nombre, puis utiliser le sélecteur :gt(n) pour obtenir les 5 derniers.

var o = $("div.container > div:gt("+($("div.container > div").length-5)+")");
9
Sampson

Depuis jQuery 1.8, vous pouvez utiliser une valeur négative dans le pseudo-sélecteur :gt().

Référence: https://api.jquery.com/gt-selector .

par exemple.

var e = $('#someelement > div:gt(-6)');

JSFiddle: https://jsfiddle.net/TrueBlueAussie/g4drety2/3/

Remarques:

  • La valeur doit être n+1
  • .slice(-5) est plus rapide car :gt ne peut pas utiliser l'amélioration des performances du navigateur.
4
Gone Coding