Saya memiliki daftar yang tidak berurutan dan indeks file li
tag dalam daftar itu. Saya harus mendapatkan li
elemen dengan menggunakan indeks itu dan mengubah warna latar belakangnya. Apakah ini mungkin tanpa mengulang seluruh daftar? Maksud saya, apakah ada metode yang dapat mencapai fungsi ini?
Ini kode saya, yang saya yakin akan berhasil ...
<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>
Jawaban:
Objek DOM tidak memiliki
css
fungsi, gunakan yang terakhir ...dokumen:
.get(index)
Pengembalian: Elemen.eq(index)
Pengembalian: jQuerysumber
Anda dapat menggunakan
.eq()
metode jQuery untuk mendapatkan elemen dengan indeks tertentu.sumber
Anda dapat menggunakan metode eq atau pemilih :
sumber
$('ul li').eq(index).css({'background-color':'#343434'});
$('ul').find('li')
lebih cepat. [1 , 2 ]Ada cara lain untuk mendapatkan elemen dengan indeks di jQuery menggunakan
:nth-of-type
pseudo-class CSS :Ada selektor lain yang dapat Anda gunakan dengan jQuery untuk mencocokkan elemen apa pun yang Anda butuhkan.
sumber
Anda bisa melewati jquery dan hanya menggunakan penandaan gaya CSS:
sumber