J'ai entendu dire que querySelector
& querySelectorAll
sont de nouvelles méthodes pour sélectionner des DOM
éléments. Comment se comparent-ils aux anciennes méthodes, getElementById
et getElementsByClassName
en termes de performance et visionneur?
Comment les performances se comparent-elles à l'utilisation du sélecteur de requête de jQuery?
Existe-t-il une recommandation de bonnes pratiques pour quel ensemble natif utiliser?
getElementById
et getElementsByClassName
sont toujours idéales aux fins de leurs noms décrivent.
qS/qSA
peut être utilisé à partir de n'importe quel contexte d'élément, mais gEBI
ne peut être utilisé qu'à partir du document
contexte.
getElementById
fait correspondre les id
attributs pour trouver des nœuds DOM, tandis que les querySelector
recherches par sélecteurs. Donc , pour un exemple de sélection invalide <div id="1"></div>
, getElementById('1')
fonctionnerait tout querySelector('#1')
échouerait, à moins que vous lui dites de faire correspondre l' id
attribut (par exemple querySelector('[id="1"]')
.
querySelector
et querySelectorAll
sont entièrement pris en charge maintenant. caniuse.com/#feat=queryselector