J'ai une page avec un certain nombre de liens avec une classe appelée "myLinkClass". Ces liens peuvent résident dans l'une des deux structures DOOM:
$(document).ready(function () {
$('.myLinkClass').bind('click', function (event) {
//...
});
});
5 Réponses :
Vous pouvez vérifier si l'élément cliqué a un ancêtre avec voici un exemple de travail de ce qui précède. p> p> divclassa code>. Si non, vous devriez pouvoir supposer que c'est dans divclassb code>:
Vous pouvez essayer comme ceci:
var parent = $(this).parent;
var parentName = parent.attr('class');
J'ai peur que cela ne fonctionne pas car le lien n'est pas nécessaire un enfant immédiat de la DIV.
$('.myLinkClass').bind('click', function (event) {
if $(this).parent('div.divClassB') {
... it's in a classB ...
}
});
pourrait être Cependant, si vous essayez de créer différents événements pour différentes "divclasses", quelque chose comme celui-ci pourrait être plus adéquat: p>
J'ai bien peur que votre premier exemple ne fonctionne pas depuis que le lien n'est pas nécessaire un enfant immédiat de la DIV. Le deuxième exemple fonctionnerait cependant, mais je préférerais avoir un seul gestionnaire d'événements.
@haagel, ".Parents ()" monte l'arbre complet.
html: strong> jQuery: strong> p> dans ce code alerte montrera le nom de la classe de parent div. Si vous souhaitez utiliser ce nom en état, essayez avec ce qui suit (si vous avez plus de 2 code> tag): p>
J'ai peur que cela ne fonctionne pas car le lien n'est pas nécessaire un enfant immédiat de la DIV.