Max: Menuscript Problem

Hallo Leute,

Ich habe folgendes Problem:

Das funktioniert ohne Probleme:
-------------------------------

<a href="#" onclick="showit(0)">Link1</a>
| <a href="#" onclick="showit(1)">Link2</a>
| <a href="#" onclick="showit(2)">Link3</a>

<ilayer name="dep1">
<layer name="dep2">
</layer>
</ilayer>
<div id="submenu"></div>
<script language="JavaScript1.2">

var submenu=new Array()
submenu[0]=''
submenu[1]='<a href="http://www.goole.at">Link1</a> | <a href="http://www.google.de">Link2</a>'
submenu[2]='<a href="http://www.google.com">Link1</a>'

var menuobj=document.getElementById? document.getElementById("submenu") : document.all? document.all.submenu : document.layers? document.dep1.document.dep2 : ""

function showit(which){
thecontent=(which==-1)? "" : submenu[which]
if (document.getElementById||document.all)
menuobj.innerHTML=thecontent
else if (document.layers){
menuobj.document.write(thecontent)
menuobj.document.close()
}
}
</script>

Wenn aber meine Array so aussieht:
----------------------------------

var submenu=new Array()
submenu[0]=''
submenu[1]='<a href="#" OnClick="sonstwas()">Link1</a> | <a href="http://www.google.de">Link2</a>'
submenu[2]='<a href="http://www.google.com">Link1</a>'

Funktioniert es nicht mehr.
Kann mir da jemand helfen?

  1. submenu[1]='<a href="#" OnClick="sonstwas()">Link1</a> | <a href="http://www.google.de">Link2</a>'

    Wo ist deine Script-Funktion sonstwas()??
    Gruß Wastl

    1. submenu[1]='<a href="#" OnClick="sonstwas()">Link1</a> | <a href="http://www.google.de">Link2</a>'

      Wo ist deine Script-Funktion sonstwas()??
      Gruß Wastl

      einfach eine andere funktion.
      sobald ein OnClick Event in der Array ist funktioniert es nicht mehr.

      1. sobald ein OnClick Event in der Array ist funktioniert es nicht mehr.

        function sonstwas()
        {document.location.href="http://www.google.at";}

        Klappt doch einwandfrei...jedenfalls in meinem Explorer. :-D
        Gruß Wastl

        1. sobald ein OnClick Event in der Array ist funktioniert es nicht mehr.

          function sonstwas()
          {document.location.href="http://www.google.at";}

          Klappt doch einwandfrei...jedenfalls in meinem Explorer. :-D
          Gruß Wastl

          Hallo,

          bei einem

          submenu[1]='<a href="#" OnClick="ajax_loadContent('content','kalender.php')">Link1</a> | <a href="http://www.google.de">Link2</a>'

          gehts nicht.

          aber ich seh gerade das 'content ...
          muss man das escapen ?

          greetz
          Max

          1. Hallo,

            bei einem

            submenu[1]='<a href="#" OnClick="ajax_loadContent('content','kalender.php')">Link1</a> | <a href="http://www.google.de">Link2</a>'
            gehts nicht.

            aber ich seh gerade das 'content ...
            muss man das escapen ?

            Backslashs fehlen ...
            Fehlt aber immer noch die Funktion...

            1. Danke.

              Wie könnte ich das machen das jeweils der aktive menüpunkt fett dargestellt wird ?

              1. Wie könnte ich das machen das jeweils der aktive menüpunkt fett dargestellt wird ?

                Probier das mal:

                <a href="#" onclick="showit(0);fett('dick1','dick2','dick3')" id="dick1">Link1</a>
                | <a href="#" onclick="showit(1);fett('dick2','dick3','dick1')" id="dick2">Link2</a>
                | <a href="#" onclick="showit(2);fett('dick3','dick2','dick1')" id="dick3">Link3</a>

                function fett(A,B,C)
                {
                document.getElementById(A).style.fontWeight="bold";
                document.getElementById(B).style.fontWeight="normal";
                document.getElementById(C).style.fontWeight="normal";
                }

                Gruß Wastl

                1. Wie könnte ich das machen das jeweils der aktive menüpunkt fett dargestellt wird ?

                  Probier das mal:

                  <a href="#" onclick="showit(0);fett('dick1','dick2','dick3')" id="dick1">Link1</a>
                  | <a href="#" onclick="showit(1);fett('dick2','dick3','dick1')" id="dick2">Link2</a>
                  | <a href="#" onclick="showit(2);fett('dick3','dick2','dick1')" id="dick3">Link3</a>

                  function fett(A,B,C)
                  {
                  document.getElementById(A).style.fontWeight="bold";
                  document.getElementById(B).style.fontWeight="normal";
                  document.getElementById(C).style.fontWeight="normal";
                  }

                  Gruß Wastl

                  oh danke.

                  Aber da ich das ganze später dynamisch erzeugen will hätte ich das gerne so, dass immer alle normal werden und nur das aktive fett. wie würde das gehen ?

                  1. hi,

                    oh danke.

                    Aber da ich das ganze später dynamisch erzeugen will hätte ich das gerne so, dass immer alle normal werden und nur das aktive fett. wie würde das gehen ?

                    Was glaubst du, was der gezeigte Code machen soll?

                    Hast du dir angeschaut, in welcher Reihenfolge die IDs jeweils übergeben werden?

                    gruß,
                    wahsaga

                    --
                    /voodoo.css:
                    #GeorgeWBush { position:absolute; bottom:-6ft; }
                    1. Was glaubst du, was der gezeigte Code machen soll?

                      Hast du dir angeschaut, in welcher Reihenfolge die IDs jeweils übergeben werden?

                      gruß,
                      wahsaga

                      hallo.

                      ja habe ich.
                      aber es wäre viel schöner alle als "normal" zu schalten und nur die übergebenen id's fett darzustellen. dies würde bei mehr menüpunkten einfacher gehen und den code erheblich reduzieren.

                      gruß,
                      Max

                      1. hi,

                        aber es wäre viel schöner alle als "normal" zu schalten und nur die übergebenen id's fett darzustellen.

                        Dies macht das Script ja auch.

                        dies würde bei mehr menüpunkten einfacher gehen und den code erheblich reduzieren.

                        Wenn du es optimieren willst, lerne mit Javascript umzugehen.

                        Mittels einer Schleife könnte man natürlich alle Elemente durchlaufen, und alle ausser einem gesuchten normal, das gesuchte fett machen.

                        gruß,
                        wahsaga

                        --
                        /voodoo.css:
                        #GeorgeWBush { position:absolute; bottom:-6ft; }
          2. sobald ein OnClick Event in der Array ist funktioniert es nicht mehr.

            function sonstwas()
            {document.location.href="http://www.google.at";}

            Klappt doch einwandfrei...jedenfalls in meinem Explorer. :-D
            Gruß Wastl

            Hallo,

            bei einem

            submenu[1]='<a href="#" OnClick="ajax_loadContent('content','kalender.php')">Link1</a> | <a href="http://www.google.de">Link2</a>'

            gehts nicht.

            aber ich seh gerade das 'content ...
            muss man das escapen ?

            greetz
            Max

            ok es geht mit:

            submenu[1]='<a href="#" OnClick="ajax_loadContent('content','kalender.php')">Link1</a> | <a href="http://www.google.de">Link2</a>'

            ganz wie bei php. *g*

            trotzdem danke.