Avatar billede kaktus Nybegynder
15. oktober 2009 - 13:27 Der er 1 kommentar

list menu skal forblive åben

Dette spørgsmål blander javascript og php.
Jeg vil gerne have menu til at forblive åben når relevant menu-pkt er klikket????
side ses her http://www.ekspert.sluk.dk/menu.php
Javascript funktionen 'initMenus' må gerne nedskrives (meget unødvendigt medtaget)
og min kode er lige nu....

<?
$page = $_GET["page"];
$subpage = $_GET["subpage"];
if(isset($page))$active = "class=\"active\"";
if(isset($subpage))$active_sub = "class=\"active\"";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<script type="text/javascript">
function initMenus() {
    if (!document.getElementsByTagName) return;
   
    var aMenus = document.getElementsByTagName("LI");
    for (var i = 0; i < aMenus.length; i++) {
        var mclass = aMenus[i].className;
        if (mclass.indexOf("active") > -1) {
            var submenu = aMenus[i].childNodes;
            for (var j = 0; j < submenu.length; j++) {
                if (submenu[j].tagName == "A") {
                   
                    submenu[j].onclick = function() {
                        var node = this.nextSibling;
                                           
                        while (1) {
                            if (node != null) {
                                if (node.tagName == "UL") {
                                    var d = (node.style.display == "none")
                                    node.style.display = (d) ? "block" : "none";
                                    this.className = (d) ? "treeopen" : "treeclosed";
                                    return false;
                                }
                                node = node.nextSibling;
                            } else {
                                return false;
                            }
                        }
                        return false;
                    }
                   
                    submenu[j].className = (mclass.indexOf("open") > -1) ? "treeopen" : "treeclosed";
                }
               
                if (submenu[j].tagName == "UL")
                    submenu[j].style.display = (mclass.indexOf("open") > -1) ? "block" : "none";
            }
        }
    }
}

window.onload = initMenus;
</script>
</head>

<body>
<ul id="nav-secondary">

<!-- ///////////////////////// dynamisk vertikal menu start ////////////////////////////// -->
    <li <? if( $page==""){echo $start;}?>><a href="<?=$_SERVER['PHP_SELF']?>">Start</a></li>
           
    <li class="active"><a  <? if( $page=="Klubben"){echo "class=\"treeopen\"";}else{echo "class=\"treeclosed\"";}?> href="#">Klubben</a>
        <ul <? if( $page!="Klubben"){echo " style=\"display: none;\"";}?>>
            <li <? if($subpage=="Historie"){echo"class=\"active\"";}?>>
            <a href="<?=$_SERVER['PHP_SELF']."?page=Klubben"?>">Historie</a>
            </li>
            <li <? if($subpage=="Klubben"){echo"class=\"active\"";}?>>
            <a href="<?=$_SERVER['PHP_SELF']."?page=Klubben"?>">Klubben</a>
            </li>
            <li <? if($subpage=="Bestyrelse"){echo"class=\"active\"";}?>>
            <a href="<?=$_SERVER['PHP_SELF']."?page=Klubben"?>">Bestyrelse</a>
            </li>
        </ul>
    </li>
   
</ul>
</body>
</html>
Avatar billede kaktus Nybegynder
15. oktober 2009 - 14:23 #1
Nåå efter at have rodet lidt med det blev løsningen rent php
og kan ses her http://www.ekspert.sluk.dk/menu2.php

Opdagede at det slet ikke var nødvendig med javascript

Undskyld ulejligheden hvis nogle derude har brugt tid på det
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester