2010-09-22 4 views
1

Je me demandais comment j'allais recevoir l'alerte d'un dernier enfant en cliquant sur un lien.Sélection du dernier enfant

<h3 id="comment:5" class="myclass"> 

Voici jusqu'où je suis arrivé:

$('#lastcomment').click(function() { 
    alert('Handler for .click() called.'); 
}); 

Mon but est de sauter au dernier commentaire en cliquant sur le lien. Une alerte serait bien pour la première étape, je suppose. Alors que je peux voir le dernier enfant des commentaires.

Toute aide est très appréciée.

+0

Pouvez-vous donner un exemple de ce que vous voulez alerter? –

+0

TI souhaite alerter le dernier commentaire. Dans ce cas, commentez: 9. – Faili

Répondre

3

Utilisez le sélecteur :last ou .last() méthode:

$("#lastcomment").click(function() { 
    var lastComment = $("h3[id^=comment]:last"); 

    alert(lastComment.attr("id")); 
} 
+0

À peu près la réponse que je cherchais. – Faili

+0

Vous ne connaissez pas le nom d'une fonction qui, au lieu d'alerter, saute au commentaire? – Faili

+0

@Faili: vous devriez pouvoir utiliser 'window.location.hash = lastComment.attr (" id ");' –

0

vous pouvez utiliser le sélecteur :last de jQuery. mais j'ai besoin de voir plus de HTML pour faire fonctionner quelque chose ...

0

Donc vous avez un lien que vous voulez aller au dernier commentaire sur une page? Pourquoi ne pas donner le commentaire d'un id de commentaire-12 (par exemple), puis il suffit de changer votre point d'ancrage pour relfect ceci:

<a class="myclass" href="#comment-12" id="last-comment"> </a> 

Si vous êtes désireux de le faire en javascript, quelque chose comme:

$('#lastcomment').click(function() { 
    var numComments = $(".comments").length; // Assuming your comments have a class 
    window.location = window.location.href + "#" + $(".comments").eq(numComments).attr("id"); 
}); 
Questions connexes