Скажем, у меня есть список элементов, таких как:Получить набор произвольных элементов по их индексу
<ul>
<li>a</li>
<li>b</li>
<li>c</li>
<li>d</li>
<li>e</li>
<li>f</li>
<li>g</li>
<li>h</li>
<li>i</li>
<li>j</li>
</ul>
И у меня есть массив как это: [ 2, 5, 6 ]
.
(как список элементов и этот массив может быть достаточно велик, но давайте оставим это просто)
Как я могу использовать JQuery эффективно, чтобы выбрать элементы, соответствующие эти элементы? (В данном случае это будет список элементов, которые содержат c
, f
и g
)
Один из способов будет использовать JQuery each()
и поиск по индексу в массиве. Но это требует линейного поиска в массиве для каждой итерации, и это не совсем оптимизировано.
Другим способом является использование переключателя eq()
или eq()
, передающего один индекс. Но тогда я должен повторить процесс для каждого элемента массива, и это тоже не эффективно. К сожалению, eq()
не получает массив в качестве параметра.
Другой способ - написать плагин jQuery, но это похоже на слишком большую работу для такой небольшой проблемы.
Вы знаете лучший способ, который работает более эффективно?
Как получить доступ ко всему списку 'li' с помощью' var childrens = $ ("ul"). Children ("li"). ; 'тогда вы можете ссылаться на него индексом, например' alert (childrens [index]) ' –
. Кое-что собирается перебирать ваш массив и захватывать каждый элемент DOM, который соответствует числу в каждом элементе массива. У jQuery нет встроенного способа сделать это. Итак, напишите себе небольшую функцию, чтобы сделать это самостоятельно. Вы можете либо сделать его утилитой, либо подключаемым модулем jQuery - вашим выбором. – jfriend00