Michael: Problem mit Menuscript mit Cookie

Hallo,
Ich bin am verzweifeln, ich habe folgendes Script erstellt und es geht einfach nicht:

var Menu = new Array;
Menu[0] = new Array;
Menu[0][0] = "Links";
Menu[0][1] = "LinksZeigen";
Menu[1] = new Array;
Menu[1][0] = "Counter";
Menu[1][1] = "CounterZeigen";
Menu[2] = new Array;
Menu[2][0] = "Version";
Menu[2][1] = "VersionZeigen";
Menu[3] = new Array;
Menu[3][0] = "Auszeichnungen";
Menu[3][1] = "AuszeichnungenZeigen";

function MenuLaden(ArrayCount){
 if(document.cookie.indexOf(ArrayCount + "=false") == -1){
  Menu[ArrayCount][2] = true;
 }else{
  Menu[ArrayCount][2] = false;
 }
}

function MenuSpeichern(ArrayCount) {
 document.cookie = ArrayCount + "=" + Menu[ArrayCount][2] + "; expires=" + (new Date(new Date().getTime() + (1000*60*60*24*365))).toGMTString() + ";";
}

function LadeWebseite(){
 if(top != self){
  top.location = self.location;
 }
 MenuLaden(0);
 MenuZeigen(0, false);
 MenuLaden(1);
 MenuZeigen(1, false);
 MenuLaden(2);
 MenuZeigen(2, false);
 MenuLaden(3);
 MenuZeigen(3, false);
}

function MenuZeigen(ArrayCount, ChangeValue){
 if(ChangeValue == true){
  if(Menu[ArrayCount][2] == true){
   Menu[ArrayCount][2] = false;
  }else{
   Menu[ArrayCount][2] = true;
  }
 }
    if(DHTML){
        var Obj = getElem("id", Menu[ArrayCount][0], null);
        if(Obj.style.display == "block" && Menu[ArrayCount][2] == false){
            Obj.style.display = "none";
            setCont("id", Menu[ArrayCount][1], null, "[Einblenden]");
        }else{
            Obj.style.display = "block";
   setCont("id", Menu[ArrayCount][1], null, "[Ausblenden]");
  }
 }
 MenuSpeichern(ArrayCount);
 return false;
}

Ich möchte erreichen, dass der User einige längere Menus ein- und ausblenden kann und die getroffene Entscheidung soll über über Cookies hinweg erhalten bleiben. Das Erstellen der Cookies funktioniert, das ein- und ausblenden der einzelnen Menus auch. Aber ausgeblendete Menus werden trotzdem eingeblendet!

Was mache ich falsch?

In diesem Script habe ich die allgemeine DHTML-Bibliothek von SelfHTML verwendet.

Gruß, Michael

--
SELFCode: ie:{ fl:( br:> va:{ ls:$ fo:| rl:( n4:& ss:| de:> js:| ch:? sh:( mo:) zu:)
  1. Habe mein Problem selbst gelöst...

    Hier das neue Script:

    var Menu = new Array;
    Menu[0] = new Array;
    Menu[0][0] = "Links";
    Menu[0][1] = "LinksZeigen";
    Menu[1] = new Array;
    Menu[1][0] = "Counter";
    Menu[1][1] = "CounterZeigen";
    Menu[2] = new Array;
    Menu[2][0] = "Version";
    Menu[2][1] = "VersionZeigen";
    Menu[3] = new Array;
    Menu[3][0] = "Auszeichnungen";
    Menu[3][1] = "AuszeichnungenZeigen";

    function LadeWebseite(){
     if(top != self){
      top.location = self.location;
     }
     MenuLaden(0);
     MenuZeigen(0);
     MenuZeigen(0);
     MenuLaden(1);
     MenuZeigen(1);
     MenuZeigen(1);
     MenuLaden(2);
     MenuZeigen(2);
     MenuZeigen(2);
     MenuLaden(3);
     MenuZeigen(3);
     MenuZeigen(3);
    }

    function MenuLaden(ArrayCount){
     if(getCookie(ArrayCount) == "0"){
      Menu[ArrayCount][2] = false
     }else{
      Menu[ArrayCount][2] = true
     }
    }

    function MenuZeigen(ArrayCount){
     if(Menu[ArrayCount][2] == true){
      Menu[ArrayCount][2] = false;
     }else{
      Menu[ArrayCount][2] = true;
     }
        if(DHTML){
            var Obj = getElem("id", Menu[ArrayCount][0], null);
            if(Obj.style.display == "block" && Menu[ArrayCount][2] == false){
                Obj.style.display = "none";
                setCont("id", Menu[ArrayCount][1], null, "[Einblenden]");
       setCookie(ArrayCount, "0");
            }else{
                Obj.style.display = "block";
       setCont("id", Menu[ArrayCount][1], null, "[Ausblenden]");
       setCookie(ArrayCount, "1");
      }
     }
     return false;
    }

    function setCookie(name, wert, domain, expires, path, secure){
     var cook = name + "=" + unescape(wert);
     cook += (domain) ? "; domain="+ domain : "";
     cook += (expires) ? "; expires="+expires : "";
     cook += (path) ? "; path="+path : "";
     cook += (secure) ? "; secure" : "";
     document.cookie = cook;
    }

    function getCookie(name){
     var i=0  //Suchposition im Cookie
     var suche = name+"="
     while (i<document.cookie.length){
      if (document.cookie.substring(i, i+suche.length)==suche){
       var ende = document.cookie.indexOf(";", i+suche.length)
       ende = (ende>-1) ? ende : document.cookie.length
       var cook = document.cookie.substring(i+suche.length, ende)
       return unescape(cook)
      }
      i++
     }
     return null
    }

    Gruß, Michael

    --
    SELFCode: ie:{ fl:( br:> va:{ ls:$ fo:| rl:( n4:& ss:| de:> js:| ch:? sh:( mo:) zu:)