2012-09-08 5 views
0

Salut tout le monde J'ai encore un problème de script. Je fais un show jQuery/hide pour les données de profil de mes membres en post. S'il vous plaît visitez http://www.pimpkings.com/t3-what-up-everyone pour voir de quoi je parle, je laisse le code sur afin que vous puissiez voir ce qu'il fait.Jquery cacher/montrer des problèmes

Chaque fois que je clique sur une personne show/hide ouvre tout le monde et je veux seulement qu'il ouvre 1 personnes à la demande des utilisateurs.

codes sont-

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js" type="text/javascript"></script> 
<script type="text/javascript"> 
$(document).ready(function(){ 
$(".slidingDiv").hide(); 
$(".show_hide").show(); 
    $('.show_hide').click(function(){ 

$(".slidingDiv").slideToggle(); 

}); 

}); 
</script> 

Ensuite, le codage html est

<span class="show_hide" style="cursor:pointer;color:#c0c0c0;">Show/hide</span> 
<div class="slidingDiv"> 
           <!-- BEGIN profile_field --> 
          <center> {postrow.displayed.profile_field.LABEL} <center/> 
          <center> {postrow.displayed.profile_field.CONTENT} <center/> 
          <center> {postrow.displayed.profile_field.SEPARATOR}<center/> 
          <!-- END profile_field --> 
          <center>{postrow.displayed.profile_field.LABEL}<center/> 
          <center>Online Status<center/><br/> 
          <center>{postrow.displayed.ONLINE_IMG}<center/> 
             {postrow.displayed.POSTER_RPG} <br /> 

          <!-- BEGIN contact_field --> 
          <br/> <br/> 
          {postrow.displayed.PROFILE_IMG} {postrow.displayed.PM_IMG} 
          {postrow.displayed.EMAIL_IMG} {postrow.displayed.contact_field.CONTENT} 
          <!-- END contact_field --> 
           <span class="show_hide" style="cursor:pointer;color:#c0c0c0;">hide</span></div> 
          </span> 

Quelqu'un peut-il aider à comprendre un autre sélecteur de sorte qu'il ne s'ouvre pas tous à la fois?

Répondre

0

Essayez ceci:

$(document).ready(function() { 
    $(".slidingDiv").hide(); 
    $(".show_hide").show(); 
    $('.show_hide').click(function() { 
     $(this).next(".slidingDiv").slideToggle(); 
    }); 
});​ 

Notez que vous devriez probablement changer la classe du lien « cacher » à la fin du profil à autre chose (par exemple, simplement cacher) afin que vous puissiez cibler plus facilement avec jQuery pour masquer le profil. Oh et une autre chose, la balise <center> était obsolète depuis longtemps. Utilisez CSS pour centrer à la place.

jsFiddle example

+0

Haha

qui a été dépréciée wow, montre combien de temps sa été depuis Ive été la programmation. J'ai commencé quand j'avais 12 ans, quand html avait la moitié des éléments obsolètes. Bien avant que la moitié de ces langues aient été créées. Je vais l'essayer et vous laisser savoir merci –

+0

Merci l'homme ça fonctionne. Je l'avouerais mais je ne peux pas. Pouvez-vous expliquer un peu comment cela a fonctionné si merveilleusement? est $ (this) .next ce qui l'a créé pour en ouvrir un à la fois? –

+0

Oui, cela fait référence à l'élément sur lequel on clique afin que l'autre code soit relatif à cet élément spécifique au lieu de tous les éléments avec une certaine classe. – j08691