Est-il possible d'utiliser un :selector
avec les éléments suivants dans jQuery?
$('.galler_attr').bind('click', function() {
$(this:first-child).css('color', 'red');
});
Est-il possible d'utiliser un :selector
avec les éléments suivants dans jQuery?
$('.galler_attr').bind('click', function() {
$(this:first-child).css('color', 'red');
});
Non. Vous essayez de mélanger le contexte de la fonction avec une chaîne.
Utilisez this
comme context du sélecteur ou appelez find()
sur $(this)
pour rechercher dans le champ DOM de l'élément. Soit
$('.galler_attr').bind('click', function() {
$(this).find(':first-child').css('color', 'red');
});
ou ce (qui décide de ce qui précède en interne):
$('.galler_attr').bind('click', function() {
$(':first-child', this).css('color', 'red');
});
thx beaucoup, très utile !! – hoerf
dans ce cas, utilisez .is()
$('.galler_attr').bind('click', function() {
$(this).is(':first-child').css('color', 'red');
// this would change the color to red if the clicked element is a first-child....
});
Je me demande pourquoi lie pas seulement à la de première enfant directement?
$('.galler_attr:first-child').bind('click', function() {
// this would bind click event to the first-child element...
$(this).css('color', 'red');
});
Oui, vous pouvez l'utiliser mais pas de cette manière. Vous pouvez le mettre comme Russ dit.
$('.galler_attr').bind('click', function() {
$(this).find(':first-child').css('color', 'red');
});
Vous pouvez obtenir une meilleure aide pour de tels problèmes en allant sur www.visualjquery.com. C'est joli.
Je ne suis pas sûr si vous cherchez le premier enfant de l'élément cliqué ou si vous voulez vérifier si l'élément cliqué est le premier enfant de son parent. Pouvez-vous clarifier s'il vous plaît? –