Prise en charge par jQuery des sélecteurs CSS3 : un examen approfondi
Alors que jQuery prétend prendre en charge un large éventail de sélecteurs CSS, la question de s'il prend réellement en charge les sélecteurs comme :nth-last-child() a refait surface. Examinons ce sujet et comprenons les limitations et exceptions.
Prise en charge limitée des sélecteurs CSS3
Malgré la conformité avec les sélecteurs de niveau 3, jQuery n'implémente pas entièrement la norme . Sa documentation sur les sélecteurs précise qu'il intègre des éléments de CSS 1 à 3 et ajoute ses propres sélecteurs personnalisés.
Exception : nth-last-child() et autres sélecteurs de niveau 3
À partir de jQuery 1.9, presque tous les sélecteurs de niveau 3 sont pris en charge dans la bibliothèque de sélecteurs Sizzle, à l'exception d'une poignée de limitations :
Retours et compatibilité
jQuery utilise l'implémentation native document.querySelectorAll() chaque fois que cela est possible. Si document.querySelectorAll() échoue ou n'est pas pris en charge, jQuery revient à Sizzle. Cela signifie que des sélecteurs comme :nth-last-child() peuvent fonctionner dans les navigateurs qui les prennent en charge de manière native, même si jQuery lui-même ne le fait pas.
Recommandation :
Si vous avez besoin d'une prise en charge complète des sélecteurs de niveau 3 comme :nth-last-child(), il est recommandé de passer à jQuery 1.9 ou version ultérieure, ce qui ajoute la prise en charge de ces sélecteurs tout en conservant la compatibilité avec les anciennes versions d'IE. Vous pouvez également envisager d'utiliser les extensions de sélecteur personnalisées de jQuery pour implémenter vous-même les sélecteurs manquants.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!