English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Voici ce qui suit :
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8> <title>Title</title> </head> <body> <a class="a">#1</a> <a class="a">#2</a> <a class="a">#3</a> <script src="js/jq.js"></script> <script> var a = $('.a') ; var b = $('.a').eq(1) ; var c = $('.a')[1); var d = $('.a').eq(1)[0]; var f = $('.a')[0].eq(1); </script> </body> </html>
$('.a') // L'a sélectionné3a, tous sont des objets jq (peuvent utiliser les attributs et méthodes jq)
$('.a').eq(1) // L'a second a a été sélectionné, c'est un objet jq (ne peut pas utiliser les attributs et méthodes DOM, peut utiliser les attributs et méthodes jq)
$('.a')[1] // L'a second a a été sélectionné, c'est un objet DOM (peut utiliser les attributs et méthodes DOM, ne peut pas utiliser les attributs et méthodes jq)
$('.a').eq(1)[0] // L'a second a a été sélectionné et converti en objet DOM (peut utiliser les attributs et méthodes DOM, ne peut pas utiliser les attributs et méthodes jq)
-----Il en résulte que jQuery enveloppe encore une couche de JS, les attributs jq peuvent être dépaquetés pour appeler les attributs DOM, tandis que DOM ne peut pas appeler les attributs et méthodes jq.
$('.a')[0].eq(1) // Erreur, car l'objet DOM ne peut pas utiliser les méthodes jq, eq() est une méthode jq.
Voici tout le contenu que j'ai partagé avec vous aujourd'hui sur la différence entre eq() dans jQuery et element.[] dans DOM, j'espère que vous apprécierez le soutien de ce tutoriel~