У меня есть неупорядоченный список и индекс li
тега в этом списке. Мне нужно получить li
элемент, используя этот индекс, и изменить его цвет фона. Возможно ли это без зацикливания всего списка? Я имею в виду, есть ли какой-нибудь метод, который мог бы достичь этой функциональности?
Вот мой код, который, я считаю, сработает ...
<script type="text/javascript">
var index = 3;
</script>
<ul>
<li>India</li>
<li>Indonesia</li>
<li>China</li>
<li>United States</li>
<li>United Kingdom</li>
</ul>
<script type="text/javascript">
// I want to change bgColor of selected li element
$('ul li')[index].css({'background-color':'#343434'});
// Or, I have seen a function in jQuery doc, which gives nothing to me
$('ul li').get(index).css({'background-color':'#343434'});
</script>
Ответы:
Объекты DOM не имеют
css
функции, используйте последний ...документы:
.get(index)
Возвращает: элемент.eq(index)
Возвращает: jQueryисточник
Вы можете использовать
.eq()
метод jQuery, чтобы получить элемент с определенным индексом.источник
Вы можете использовать метод или селектор eq :
источник
$('ul li').eq(index).css({'background-color':'#343434'});
$('ul').find('li')
работает быстрее. [1 , 2 ]Есть еще один способ получить элемент по индексу в jQuery с использованием
:nth-of-type
псевдокласса CSS :Есть и другие селекторы, которые вы можете использовать с jQuery для соответствия любому элементу, который вам нужен.
источник
Вы можете пропустить jquery и просто использовать теги стиля CSS:
источник