jQuery - Trouver de l'onglet actif
J'ai une liste d'onglets:
<ul class="tabs">
<li><a data-id="1" href="#">AAA</a></li>
<li><a data-id="2" href="#" class="active">BBB</a></li>
<li><a data-id="3" href="#">CCC</a></li>
</ul>
Ensuite, j'ai un bouton:
<div id="button">Click Me</div>
Comment puis-je, quand on clique sur le bouton, l'accès à l'élément ayant la classe d'actif? J'ai besoin d'être en mesure d'obtenir les données de l'id de l'élément actif.
Alors, quelque chose comme ça... (cela ne fonctionne pas!)
$("#button").live("click", function(){
var ref_this = $("ul.tabs li a").find(".active");
alert(ref_this.data("id"));
});
OriginalL'auteur TiagoSouEu | 2013-09-25
Vous devez vous connecter pour publier un commentaire.
Vous avez déjà sélectionné le
a
, etfind()
recherches descendants. Essayez plutôt ceci:Note de côté:
live()
est obsolète depuis la version 1.7.on()
est le nouveau hotness.OriginalL'auteur Jason P
Essayer au lieu de vivre:
OriginalL'auteur Evets Rezik
Comme d'autres l'ont déjà mentionné: depuis jQuery v1.7 le live() la méthode est obsolète.
Cela devrait fonctionner:
OriginalL'auteur Robin
Être prudent,
live()
jQuery
méthode est obsolète depuis1.7
version. Vous devez utiliseron()
jQuery
plutôt la méthode (sur() de jquery documentation) et de changer votreCSS
sélecteur comme ceci :Et si le
active
classe est optionnel (0
à1
. Pasn
), vous devez vérifier s'il existe uneactive
élément par exemple (juste un moyen simple de le faire) :OriginalL'auteur deformhead
OriginalL'auteur Darshit Gandhi