#jquery
#jquery
Вопрос:
Я выбрал кучу элементов li, которые соответствуют определенным критериям, вот так:
var x = $('li[attribute="value"]');
Теперь, вместо повторного поиска в dom, я хочу выполнить поиск в x для тега li, который имеет определенный идентификатор. Я мог бы использовать .каждый для поиска x, но было интересно, есть ли однострочный оператор, который я мог бы использовать.
что-то вроде этого:
var myLi = x.find("[id=23]");
или быстрее выполнять поиск в dom с использованием тега id. Что, если бы я захотел выполнить поиск по второму атрибуту?
Пожалуйста, сообщите.
Спасибо!
Редактировать
Пожалуйста, обратите внимание, что я хочу изменить свойства myLi (скажем, сделать его цвет фона красным), поэтому мне нужна ссылка на элемент. Спасибо.
Комментарии:
1. если вы предоставляете fiddle, то легко решить вашу проблему
2. Я бы сказал, сначала идите простым путем (выполните поиск идентификатора в DOM) и посмотрите, окажет ли это какое-либо влияние. Выполните некоторое профилирование, если хотите. Если вы ищете другой атрибут, то да, фильтрация текущего списка лучше.
Ответ №1:
Вы можете сделать это:
var myLi = x.filter('#23');
jquery.filter(): Сократите набор подобранных элементов до тех, которые соответствуют
селектор или передать функции
тест.
Ответ №2:
Ниже приведены различные способы, которыми вы можете получить элемент, начиная с самого быстрого