anika: wie bekomme ich angeklickten link in den ersten layer?

hi,

ich habe es ejtzt geschafft meine homepage von frames zu befreien und in layer zu setzen.
jetzt habe ich vier:
layer eins (hier befindet sich "herzlich willkommen")
layer zwei (links oben in der ecke; logo)
layer drei (oben; titel der site)
layer vier (rechts; menü)

wie kann ich nun, wenn ich im menü einen link anklicke erreichen dass dieser im layer eins erscheint? praktisch wie bei den frames: im frame rechts is das menü, wenn ich darauf klicke erscheint der text im hauptframe!

vielen dank schonma anika

  1. hi anika

    wenn ich mich recht erinnare beim Link bei target genau so wie ob du
     mit frame arbeitest !

    z.B.
    targer="Layereins"

    So müsste es gehn hoffe das hilft dir weiter

    mfg

    JC

    1. hi,

      das problem ist, dass das kein "normales" menü ist, sondern mit "xara menu maker" gemacht und wenn ich da in den quelltext schau...naja...ich kann aber in dem programm selbst nichts eingeben wo ich die links öffnen will, das heißt es geht, aber er macht das im IE nicht wirklich...

      wenn ich den quelltext dann öffne sieht das etwa so aus:

      if(typeof(loc)=="undefined"||loc==""){var loc="";if(document.body&&document.body.innerHTML){var tt=document.body.innerHTML.toLowerCase();var last=tt.indexOf("arrow.js"");if(last>0){var first=tt.lastIndexOf(""",last);if(first>0&&first<last)loc=document.body.innerHTML.substr(first+1,last-first-1);}}}

      var bd=0
      document.write("<style type="text/css">");
      document.write("\n<!--\n");
      document.write(".arrow_menu {border-color:#ffffff;border-style:solid;border-width:"+bd+"px 0px "+bd+"px 0px;background-color:#ffffff;position:absolute;left:0px;top:0px;visibility:hidden;}");
      document.write("a.arrow_plain:link, a.arrow_plain:visited{text-align:left;background-color:#ffffff;color:#000000;text-decoration:none;border-color:#ffffff;border-style:solid;border-width:0px "+bd+"px 0px "+bd+"px;padding:2px 0px 2px 0px;cursor:hand;display:block;font-size:9pt;font-family:Arial, Helvetica, sans-serif;}");
      document.write("a.arrow_plain:hover, a.arrow_plain:active{background-color:#0066cc;color:#000000;text-decoration:none;border-color:#ffffff;border-style:solid;border-width:0px "+bd+"px 0px "+bd+"px;padding:2px 0px 2px 0px;cursor:hand;display:block;font-size:9pt;font-family:Arial, Helvetica, sans-serif;}");
      document.write("a.arrow_l:link, a.arrow_l:visited{text-align:left;background:#ffffff url("+loc+"arrow_l.gif) no-repeat right;color:#000000;text-decoration:none;border-color:#ffffff;border-style:solid;border-width:0px "+bd+"px 0px "+bd+"px;padding:2px 0px 2px 0px;cursor:hand;display:block;font-size:9pt;font-family:Arial, Helvetica, sans-serif;}");
      document.write("a.arrow_l:hover, a.arrow_l:active{background:#0066cc url("+loc+"arrow_l.gif) no-repeat right;color: #000000;text-decoration:none;border-color:#ffffff;border-style:solid;border-width:0px "+bd+"px 0px "+bd+"px;padding:2px 0px 2px 0px;cursor:hand;display:block;font-size:9pt;font-family:Arial, Helvetica, sans-serif;}");
      document.write("\n-->\n");
      document.write("</style>");

      var fc=0x000000;
      var bc=0x0066cc;
      if(typeof(frames)=="undefined"){var frames=4;if(frames>0)animate();}

      startMainMenu("arrow_top.gif",25,167,1,0,0)
      mainMenuItem("arrow_b1",".gif",25,167,"javascript:;","","Server Domaene",1,2,"arrow_plain");
      mainMenuItem("arrow_b2",".gif",25,167,"javascript:;","","Allgemeins",2,2,"arrow_plain");
      mainMenuItem("arrow_b3",".gif",25,167,"javascript:;","","Benutzerverwaltung",2,2,"arrow_plain");
      mainMenuItem("arrow_b4",".gif",25,167,"javascript:;","","Konzeption",2,2,"arrow_plain");
      mainMenuItem("arrow_b5",".gif",25,167,"javascript:;","","Workstation",2,2,"arrow_plain");
      mainMenuItem("arrow_b6",".gif",25,167,"javascript:;","","Virenschutz",2,2,"arrow_plain");
      mainMenuItem("arrow_b7",".gif",25,167,"javascript:;","","SMS- Verwaltung",2,2,"arrow_plain");
      mainMenuItem("arrow_b8",".gif",25,167,"javascript:;","","Office",2,2,"arrow_plain");
      mainMenuItem("arrow_b9",".gif",25,167,"javascript:;","","Mail",2,2,"arrow_plain");
      mainMenuItem("arrow_b10",".gif",25,167,"javascript:;","","TCP/IP",2,2,"arrow_plain");
      endMainMenu("arrow_bottom.gif",25,167)

      startSubmenu("arrow_b1_9","arrow_menu",121);
      submenuItem("Allgemeines",loc+"../Domaene/Virenschutz/allgemeines.html","","arrow_plain");
      submenuItem("ePolicy",loc+"../Domaene/Virenschutz/epolicy.html","","arrow_plain");
      submenuItem("Warnungs-Manager",loc+"../Domaene/Virenschutz/warnungsmanager.html","","arrow_plain");
      submenuItem("Auto-Update",loc+"../Domaene/Virenschutz/autoupdate.html","","arrow_plain");
      submenuItem("Group Shield",loc+"../Domaene/Virenschutz/groupshield.html","","arrow_plain");
      submenuItem("VIrus Scan",loc+"../Domaene/Virenschutz/virusscan.html","","arrow_plain");
      endSubmenu("arrow_b1_9");

      und wo soll da das TARGET rein? *g* ich blicks net...

      anika

      1. Hmm der Code ist sehr enlich mit ein JavaMenue das ich mal hatte und wenn das so ist denke ich mal das das Targen

        In den "" nach der Url rein muss also

        z.B.

        startSubmenu("arrow_b1_9","arrow_menu",121);
        submenuItem("Allgemeines",loc+"../Domaene/Virenschutz/allgemeines.html","","arrow_plain");

        muss dann so aussehn

        startSubmenu("arrow_b1_9","arrow_menu",121);
        submenuItem("Allgemeines",loc+"../Domaene/Virenschutz/allgemeines.html","Layereins","arrow_plain");

        denke ich mal !

        hoffe das die Hilft

        mfg

        JC

        1. Das funzt leider auch nicht!

          1. hmm dann weiss ich leider auch nicht

            Ist die seite Online kann man die sehn ?

            So kann ich versuchen so was zu finden !

            mfg

            Jc

            1. Nein, tut mir leid, die Seite ist nicht online (ist die Interne Seite meiner Firma) Das is total doof, das weiß ich. Hatte deswegen auch schon mit einigen hier streit...

      2. hallo anika,

        das problem ist, dass das kein "normales" menü ist, sondern mit "xara menu maker" gemacht

        Solange wir diesen "menu maker" nicht kennen, wird dir kaum ein wirklich hilfreicher Rat gegeben werden können.

        und wenn ich da in den quelltext schau...naja...

        Soooo schwierig ist der Schnipsel gar nicht, den du angegeben hast. Allerdings hast du die _entscheidenden_ Stellen weggelassen.

        ich kann aber in dem programm selbst nichts eingeben wo ich die links öffnen will

        Dann bist du tatsächlich darauf angewiesen, das "von Hand" nachzuholen.

        if(typeof(loc)=="undefined"||loc==""){var loc="";if(document.body&&document.body.innerHTML){var tt=document.body.innerHTML.toLowerCase();var last=tt.indexOf("arrow.js"");if(last>0){var first=tt.lastIndexOf(""",last);if(first>0&&first<last)loc=document.body.innerHTML.substr(first+1,last-first-1);}}}

        Hier passiert nichts anderes, als daß eine bestimmte Variable ("var tt") in Abhängigkeit von bestimmten Voraussetzungen - darunter ein externes Javascript  -  mit Inhalt gefüllt wird

        document.write("<style type="text/css">");

        Alles was hier folgt (also der größte Teil dessen, was du gepostet hast) ist dynamisch erzeugtes CSS und hat mit deiner Frage eigentlich nichts zu tun

        if(typeof(frames)=="undefined"){var frames=4;if(frames>0)animate();}

        Hier ist eine Funktion "animate()" im Einsatz, die du nicht angegeben hast

        mainMenuItem("arrow_b1",".gif",25,167,"javascript:;","","Server Domaene",1,2,"arrow_plain");

        Und hier muß wohl an irgendeiner Stelle dein "target" mit in die Klammer. Aber irgendwelche anderen Scriptbestandteile legen fest, welche Reihenfolge die Argumente in deiner Klammer haben und was sie bedeuten sollen. Es kann sein, daß das, was du möchtest, bisher in der Argumentliste gar nicht vorgesehen ist.

        Du müßtest dir schon die Mühe machen, die wirklich entscheidenden Stellen deines Javascript-Codes herauszufinden.

        Grüße aus Berlin

        Christoph S.

    2. hi,

      wenn ich mich recht erinnare beim Link bei target genau so wie ob du
       mit frame arbeitest !

      das ist kompletter unsinn.

      z.B.
      targer="Layereins"
      So müsste es gehn hoffe das hilft dir weiter

      du kannst einen "layer" nicht als target eines links angeben - weil du dort mit einem link gar nichts hineinladen kannst.

      das muss entweder über javascript gehen (davon ist abzuraten, erstens müssen _alle_ seiteninhalte direkt mit geladen werden, um sie dann dynamisch einzublenden, und zweitens sind besucher ohne JS asgeschlossen), oder serverseitig, in dem die inhalte dynamisch in den jeweiligen layer includet werden.

      gruss,
      wahsaga

      1. hallo,

        wenn ich mich recht erinnare beim Link bei target genau so wie ob du  mit frame arbeitest !
        das ist kompletter unsinn.

        Ja.
        Nein  -  jedenfalls nicht im Kontext der Fragestellung und wenn man den Code berücksichtigt, den anika einsetzen möchte. Allerdings geht ihr Code auch von einer Framekonstruktion aus. Selbstverständlich geht es nicht in der Form
          <a href="seite.htm" target="layername">
        aber mit
          document.getElementById(layername).innerHTML
        (wie es in anikas Script angedeutet ist) könnte man herumexperimentieren.

        du kannst einen "layer" nicht als target eines links angeben - weil du dort mit einem link gar nichts hineinladen kannst.

        Im Rahmen einer Javascript-Lösung "geht" das schon. Und wenn jemand im Topic oben "DHTML" angibt und es sich um eine firmeninterne Seite handelt, kann der übliche Warnhinweis ("Javascript muß eingeschaltet sein") entfallen  -  die Firmenrechner sollte man kennen.

        oder serverseitig, in dem die inhalte dynamisch in den jeweiligen layer includet werden.

        Das wäre grundsätzlich die Methode der Wahl. Aber auch SSI laden häufig den "kompletten" Include-Code mit, was bei entsprechender Konstruktion zu Dokumentgrößen in MB-Bereich führen kann. Sollte allerdings im Firmennetz auch nicht allzu problematisch sein.

        Grüße aus Berlin

        Christoph S.

        --
        mailto:christoph.schnauss@berlin.de
        ss:| zu:) ls:& fo:) va:) sh:| rl:|
        1. hi,

          du kannst einen "layer" nicht als target eines links angeben - weil du dort mit einem link gar nichts hineinladen kannst.
          Im Rahmen einer Javascript-Lösung "geht" das schon.

          nicht mit einem html-link und dem html-attribut target.

          auf die umsetzung mit javascript habe ich ja weiter unten im posting noch bezug genommen, und auch darauf, warum ich davon abraten würde.

          gruss,
          wahsaga

      2. wenn ich mich recht erinnare beim Link bei target genau so wie ob du
         mit frame arbeitest !
        das ist kompletter unsinn. ?????????

        Wenn das so ein  kompletter unsinn ist warum kann ich das Bei mir machen ?

        Naja egal bei mir Get das Ich Spreche mit ein <a href und target ein layer an ! Und das geht bei mir !!!

        mfg

        JC