Lors de la gestion d’événements avec plusieurs sélecteurs, tels que:
$('.item a, .another-item a').click(function(e) { });
Est-il possible de déterminer quel sélecteur de parents a déclenché l’événement? Était-ce un .item
ou un .another-item
?
Je vous remercie!
Étant donné qu’un sélecteur peut être à peu près n’importe quoi, vous devez vérifier des éléments spécifiques, tels que:
if($(this).is('.item a')){ //your code here } else if ($(this).is('.another-item a')){ //more here }
Vous pouvez utiliser jQuery is
.
if($(this).is('.item a')){ // code } else if($(this).is('.another-item a')){//remove 'if ' in case there are only two selector separated by commas. //code.. }
Tu peux vérifier:
var isItem = $( this ).parents( '.item:first' ).length > 0, isAnotherItem = $( this ).parents( '.another-item:first' ).length > 0;
Si .item
et .another-item
appartiennent à 2 nœuds différents .. alors vous pouvez essayer comme ci-dessous,
$('.item a, .another-item a').click(function(e) { if ($(this).closest('.item').length) { //if it is '.item' } else { } });
Essaye ça
$(this).closest('.item').length > 0