Sokongan Pemilih jQuery: Membongkar Misteri
Walaupun jQuery mempunyai sokongan pemilih CSS yang meluas, pemilih tertentu seperti :nth-last-child() tetap sukar difahami. Walau bagaimanapun, ia tidak semudah yang kelihatan.
Pelaksanaan Separa jQuery bagi Pemilih CSS3
Walaupun menuntut pematuhan dengan Pemilih Tahap 3, pelaksanaan pemilih jQuery gagal di beberapa kawasan , seperti yang dijelaskan dalam dokumentasinya. Ia bergantung pada pustaka pemilih asasnya, Sizzle, yang menyokong kebanyakan tetapi bukan semua pemilih Tahap 3.
Pemilih Disokong dan Tidak Disokong
Bermula dari jQuery 1.9, Sizzle menyokong hampir semua pemilih Tahap 3 kecuali:
Selain itu, jQuery telah menambah pemilihnya sendiri.
:nth-last-child() in Action
The :nth-last-child( ) pemilih nampaknya berfungsi dalam sesetengah pelayar kerana jQuery memanfaatkan document.querySelectorAll(). Penyemak imbas yang menyokong kedua-dua :nth-last-child() dan document.querySelectorAll(), seperti Firefox, Chrome dan IE9, mengembalikan senarai nod yang boleh digunakan oleh jQuery.
Fallback Mechanism dan IE8 Compatibility
Jika document.querySelectorAll() gagal, jQuery akan kembali kepada Sizzle. Walau bagaimanapun, Sizzle tidak menyokong :nth-last-child(). Memandangkan IE8 tidak melaksanakan document.querySelectorAll(), mekanisme sandaran gagal, yang membawa kepada kegagalan pada IE8.
Penyelesaian Alternatif
Naik taraf kepada jQuery 1.9 atau lebih baru diselesaikan isu :nth-last-child(). Sebagai alternatif, jQuery menyediakan sambungan pemilih tersuai untuk melaksanakan kelas pseudo yang tidak disokong.
Atas ialah kandungan terperinci Adakah jQuery Benar-benar Menyokong Semua Pemilih CSS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!