Выберите элемент с индексом больше 3 и меньше 6 - PullRequest
9 голосов
/ 16 января 2012

я хочу выбрать элемент, индекс которого больше 3 и меньше 6 например: $("td:gt(3)") и $("td:lt(6)")?

Ответы [ 2 ]

11 голосов
/ 16 января 2012

Просто объедините два, и оно должно работать:

$("td:gt(3):lt(6)");

Вы можете использовать любое количество псевдоселекторов.Все они будут применяться.

Однако обратите внимание, что ответ slice будет гораздо более эффективным, чем этот!

Обновление

Приведенный выше коднеправильно.Вам необходимо поменять местами :lt и :gt, потому что после выполнения селектора gt набор подходящих элементов уменьшается, а индексы, к которым применяется :lt, отличаются:

$("td:lt(6):gt(3)");

ОднакоКак уже упоминалось выше, slice будет лучше, с точки зрения производительности.Если вам интересно, насколько лучше будет эта производительность, я собрал быстрый тест .Вот результаты (slice почти в 4 раза быстрее):

enter image description here

10 голосов
/ 16 января 2012

используйте slice(start, end)

$('td').slice(3,6)

документацию

...