2009-04-06 24 views
0

Ich versuche eine Show/Verstecke von einem Div auf einmal auszulösen.Zeige/Verstecke mehrere Divs

Was passiert ist, dass alle divs (.shareLink) zur gleichen Zeit öffnen.

Unten ist mein jQuery:

$(document).ready(function(){ 
$(".shareLink").hide(); 
$("a.trigger").click(function(){ 
$(".shareLink").toggle("400"); 
return false; 
}); 
}); 

Unten ist mein HTML:

<dl class="links"> 
    <dd>content</dd> 
    <dt class="description">content</dt> 
    <ul class="tools">  
     <li><a class="trigger" href="#">Share Link</a></li> 
    </ul> 
</dl> 
<div class="shareLink"> 
<?php print check_plain($node->title) ?> 
</div> 

Jede Hilfe mit dem obigen Problem würde sehr geschätzt werden.

Prost.

+0

posten Sie bitte, wie Ihr HTML eingerichtet ist, sonst können wir Ihnen nicht wirklich helfen. Wie gerade jetzt wählen Sie alles mit einer Klasse von shareLink aus und schalten es um, so dass sich natürlich alles öffnet. –

+0

Es ist auch eine gute Idee, Ihren Quellcode nach akzeptierten Stilkonventionen zu formatieren: http://en.wikipedia.org/wiki/Programming_style#Indenting Dies erleichtert es Ihnen und anderen, den Code zu lesen und zu verstehen. – Calvin

Antwort

4

Basierend auf Ihren HTML, müssen Sie dies tun:

$(function() { 
    $("div.shareLink").hide(); 
    $("a.trigger").click(function(){ 
     $(this).parents('dl.links').next('div.shareLink').toggle(400); 
     return false; 
    }); 
}); 

Diese geht an die Mutter DL und bewegt sich dann auf die nächste shareLink div über und schaltet es.

+0

Danke für Ihre Hilfe. Ich habe versehentlich den falschen Code eingegeben. Der eigentliche Code wurde nun in meinen ursprünglichen Post eingefügt. –

+0

Es ist die gleiche Idee wie zuvor, nur weiter zum dl. Ich habe meinen Code aktualisiert, um dies zu zeigen. –

0

Sie könnten versuchen wollen:

$(document).ready(function(){ 
    $(".shareLink").hide(); 
    $("a.trigger").click(function(e){ 
     e.preventDefault(); 
     $(this).next().toggle("400"); 
    }); 
}); 

Die Antwort ist es auf die Struktur des Dokuments abhängt. Hier ist ein Beispiel für etwas, das mit der obigen Funktion funktioniert.

<a class="trigger">click here</a> 
<div class="shareLink"> 
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
</div> 
1
$(".shareLink").toggle("400"); 

Bezieht sich auf div auf der Seite mit einer Klasse von ".shareLink".

Sie müssen einen Weg finden, um das spezifische div zu unterscheiden, das Sie zeigen möchten.

Verwandte Themen