webForumDet fria alternativet

Fråga om expanderande meny

3 svar · 273 visningar · startad av Fireh

FirehMedlem sedan jan. 2003173 inlägg
#1

Hej.

Jag använder den expanderande menyn som finns i ett par trådar här på wF (t.ex. denna).
Den fungerar bra, men det är en grej jag saknar i den.
Jag skulle vilja att när man klickar på nästa meny, så ska föregående stängas.
Som det är nu måste man klicka på samma meny igen för att stänga innan man tar nästa.
Går det att göra?

Här är det som används i <HEAD>:

  <script>
    function menu(objId) {
        var obj = document.getElementById(objId);
        if(obj.style.display=='none') {
        obj.style.display=''
        }
        else obj.style.display='none'
    }
  </script>

Och det som används på sidan:

<div onclick="menu('menyInfo')" style="cursor: pointer">
  » <a href="info.asp">Info</a>
</div>
<div style="display: none" id="menyInfo">
  - <a href="info1.asp">Info1</a><br>
  - <a href="info2.asp">Info2</a>
</div>
Peter SMedlem sedan dec. 20025 483 inlägg
#2

Hejsan!

    var curr = null;
    function menu(objId) {
        var obj = document.getElementById(objId);

        if (curr && curr != obj){
	    curr.style.display = "none";
        }

        if(obj.style.display=='none') {
            obj.style.display='block';
        }
        else {
            obj.style.display='none';
        }

        curr = obj;
    }
FirehMedlem sedan jan. 2003173 inlägg
#3

Tack!
Fungerar utmärkt!

learnMedlem sedan jan. 20051 130 inlägg
#4

Hmm, men nu "stängs" ju menyn när man klickar på en länk... Hur ska man göra för att menyn fortfarande ska vara expanderad?

122 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
120 ms — hämta tråd, inlägg och bilagor (db)