C'è un modo per lasciare che l'elemento interno di un compia qualcosa?jQuery come eseguire l'evento solo sull'elemento interno
Ho elementi di elenco che possono contenere tag a
con una determinata classe.
I tag interni a
sono associati a un gestore eventi in tempo reale. Gli elementi della lista hanno anche un gestore di eventi click.
Qualcosa di simile
<li>some text<a class="someClassName">some text</a></li>
con il gestore per i a
tag
$('#somelist li a').live("click", function(e)
e questo è come viene aggiunto l'evento per la voce li
$(markers).each(function(i,marker){
$("<li />")
.html("Locatie "+'<a class="ol id"><strong>'+ids[i]+'</strong></a>')
.click(function(e){
showLocation(marker, i);
})
.appendTo("#somelist ");
La prego di inviare più di codice? Cosa viene aggiunto dinamicamente? Sia il 'a' che il' li'? Proprio il 'a'? Il clic per 'li' si usa' bind() 'e' a' sta usando 'live()'? – user113716
Gli elementi li vengono aggiunti dinamicamente all'inizio C'è un extra un tag aggiunto agli elementi della lista in una fase successiva quando si fa clic su una casella di controllo. Controllo con hasClass su cui si fa clic su uno. Suppongo di avere un legame e un evento dal vivo quindi – Richard
ok, stai dicendo, dovrei usare dal vivo in modo coerente. Posso provarlo definitivamente e provare anche la soluzione di @Alex. Posso tornare più tardi per verificare se uno o l'altro o entrambi hanno funzionato. Grazie ad entrambi per il prezioso input sofar. – Richard