2010-06-24 7 views
0

J'essaie d'obtenir le premier élément .myClass de ma page.Eq est le sélecteur correct pour obtenir le premier élément d'une liste jquery? Cela me donne une erreur

Pour ce faire, j'utilise $(".myClass:eq(0)"); Cela fonctionne parfaitement, mais me donne l'erreur de la console suivante:

"Warning: Pseudo-class or pseudo-element "eq" unknown." (calomnié du français)

Est-ce que l'erreur normale? Y a-t-il un moyen de l'éviter? Quelle syntaxe utilisez-vous pour sélectionner les premiers éléments? J'ai également essayé $(".myClass:first"); mais le problème est alors le même avec le premier.

Nous vous remercions d'avance pour votre aide David

+0

Est-ce « avertissement » ou une erreur? Je veux dire, est-ce que le code suivant cela fonctionne encore? –

+0

Merci pour la précision. J'utilise la dernière version 1.4.2, téléchargée hier. Donc je suppose que cette erreur n'est pas normale? – daviddarx

+0

@Felix - Vous avez tort 'La: première pseudo-classe est équivalente à: eq (0) 'http://api.jquery.com/first-selector/ ... Vous, mal interprété avec' firt-child '... – Reigel

Répondre

1

Votre code est très bien et correct. Je me demande quelle version de jQuery vous utilisez et quel navigateur vous testez.

$(".myClass").first() 

qui est un raccourci pour

$(".myClass").eq(0) 

pourrait résoudre votre problème. .first() n'utilisera pas sizzle pour interroger des éléments, mais utilise le tableau slice pour réduire l'ensemble des éléments correspondants.

+0

Cela fonctionne parfaitement avec le premier(). Plus d'avertissement, merci! – daviddarx

1

vous obtenez cet avertissement parce eq() n'est pas un sélecteur de CSS valide ...

vous obtenez la même chose avec :first parce que le ..

et jQuery attrape cet avertissement, puis effectuez la chose qu'il doit faire avec elle ...

vient même avec ce :hidden

+0

Merci pour cette explication, je comprends mieux maintenant. – daviddarx