kleines klappmenu

brainsucker

Erfahrenes Mitglied
Hallo zusammen,

ich habe mir folgendes Klappemnü gebastelt, welches teilweise auch funktioniert. Zu dem Problem komme ich gleich, hier zunächst mal der Code:


HTML:
<script type="text/javascript" language="JavaScript1.2">
var show_me = false;

function hide_me(ident) 
{ 

	if (show_me)
	{
		document.getElementById(ident).style.display = 'none';
		show_me = false;
	}
	else
	{
		document.getElementById(ident).style.display = 'block';
		show_me = true;
	}
} 
</script>
Danach gehts im HTML so weiter:

HTML:
<a href="#" onclick="hide_me('eins')">klick mich</a><br>
<div style="display:none" id="eins">der hidden text</div><br><br>

<a href="#" onclick="hide_me('zwei')">klick mich</a><br>
<div style="display:none" id="zwei">der hidden text</div><br><br>

<a href="#" onclick="hide_me('drei')">klick mich</a><br>
<div style="display:none" id="drei">der hidden text</div><br><br>

<a href="#" onclick="hide_me('vier')">klick mich</a><br>
<div style="display:none" id="vier">der hidden text</div><br><br>

Das erste mal wenn ich etwas anklicke zeigt er mir den hidden text dann auch an, alle anderen links muss ich aber 2x klicken bevor sie aufgehen. Wie kann ich das lösen / sauber umsetzen?

Ich möchte es halt so haben dass wenn jemand auf den zweiten div klickt der text darunter angezeigt wird, wenn der user danach auf das erste geht wird eben dies angezeigt und wenn er es nochmal anklickt sich das eben wieder schließt. Hoffe Ihr versteht was ich meine...


Danke für Eure Hilfe!
 
Meinst du so?
Code:
var show_me = false;

function hide_me(ident) 
{ 
  target=document.getElementById(ident);
  target.style.display=(target.style.display=='none')?'block':'none';
  if(show_me && target!=show_me)show_me.style.display='none';
  show_me=target;
}
 
Hi,

das sieht schonmal besser aus. Allerdings wäre es cool wenn ein zuvor aufgeklapptes div auch offen bleibt wenn ein zweites angezeigt werden soll.

Im Augenblick zeigt er mir ja immer nur 1 hidden text an, wie müsste ich es ändern damit wenn ich alle 4 divs anklicke auch alle 4 hidden texte angezeigt werden?

Vielen Dank schonmal für Deine Hilfe
 
Ahso...da hab ich wohl ein bisserl weiter gedacht als nötig :)
Code:
function hide_me(ident) 
{ 
  target=document.getElementById(ident);
  target.style.display=(target.style.display=='none')?'block':'none';
}
...ist dann ausreichend
 

Neue Beiträge

Zurück