DD: Seiten mittels Dropdown Menü im externen Frame öffnen

So liebe Gemeinde habe folgendes Problem:

Ich habe eine Seite die in zwei Frames geteilt ist.
Einen oberen recht kleinen Frame in dem ein Logo sowie das Dropdown Menü platziert werden soll und
einen unteren Bereich welcher der Hauptteil ist in dem alles angezeigt wird.

Nun soll mein Dropdown Menü welches im oberen Frame sitzt die Seiten im unteren Frame öffnen.

Nun hab ich schon hier geschaut und auch schon einiges ausprobiert auch mittels Generatoren die man im Web finden konnte nur leider klappte bei mir nichts davon.

Die Sache mit den normalen Links bei denen man dann einfach target eingegeben hatte klappte hierbei leider nicht.

Falls mir jemand sofort ein Script oder ähnliches bieten kann, der untere Frame heisst ganz einfach "haupt" ;-)

Wäre klasse wenn ihr mir weiter helfen könntet.

  1. Kann mir denn wirklich keiner hierzu eine Auskunft geben oder weiterhelfen ?

    MfG

    DD

  2. Hallihallo!

    Um Deine Frage wirklich zielgerichtet beantworten zu können, bräuchte man eigentlich ein Wenig mehr Vorabinformation von Dir.
    Wichtig wäre in diesem Zusammenhang z.B. die Frage:
    Was genau ist das für ein Menü? Ist es Javascript-basiert? Oder ist es ein CSS-basiertes Dropdown- Menü? Oder anders gefragt: Auf welche Art und Weise wird der Seitenwechsel realisiert?

    Diese und andere eventuell auftretenden Gegenfragen lassen sich von Vornherein ausschließen, indem man entweder die entscheidenden Passagen des betreffenden Quelltextes oder eine URL zum Nachschauen postet.

    Aber um Deine Frage endlich mal zu beantworten (oder es zu versuchen):

    Möglichkeit 1, Javascript- Menü:
    Irgendwo im Quelltext, wahrscheinlich in einer Funktion, steht etwas wie top.location.href="..." oder self.location.href="...".
    Diese Stelle müsste ersetzt werden durch top.haupt.location.href="..."
    Anmerkung dazu: Javascriptbasierte Menüs sind sowohl besucher- als auch Suchmaschinenfeindlich.

    Möglichkeit 2, Menü ohne Javascript:
    Eine Notation von <base target="haupt"> innerhalb des head- Bereichs des oberen Frames sorgt dafür, daß alle Links innerhalb dieses Frames (bzw. dieser einen HTML- Datei) im Frame "haupt" geöffnet werden.

    Solche und einige andere Probleme lassen sich jedoch sehr einfach umgehen, indem man auf Frames einfach verzichtet. Solltest Du auf Deinem Webspace die Möglichkeit haben, ServerSide Includes (SSI), PHP oder Ähnliches einzusetzen, so lohnt es sich, sich damit zu befassen. Die Vorteile überwiegen den Arbeits- und Lernaufwand bei Weitem.

    Ich hoffe, ich konnte Dir ein Wenig weiterhelfen.

    Viele liebe Grüße,
    Der Dicki

    1. Danke dir für die Hilfe.
      Habs mal probiert mit der HTML-Sache nur leider wird es noch immer im oberen Frame geöffnet. Hier mal der Quelltext incl. deinem Vorschlag mit <base target="haupt">

      <html>
      <head>
      <Title>-</Title>
      <body bgcolor="#00CCFF" text="#FFFFFF" link="#0099FF" vlink="#CCCCCC" alink="#FFFF99">
      <base target="haupt">
      </head>
      <body>
      <center>
      <table border><table width=100%>
      <tr>
      <th width=200>
      <th valign=bottom>
      <th align=right width=200 valign=bottom>
      <form name="jump">
      <select name="menu" onChange="location=document.jump.menu.options[document.jump.menu.selectedIndex].value;" value="GO">
      <option value="http://">Bereich auswählen</option>
      <option value="http://news.htm">News</option>
      <option value="http://222">222</option>
      <option value="http://333">333</option>
      <option value="http://444">444</option>
      <option value="http://555">555</option>
      <option value="http://666">666</option>
      <option value="http://777">777</option>
      <option value="http://888">888</option>
      <option value="http://999">999</option>
      </select>
      </form>
      </tr>
      </table>
      <br>
      </body>
      </html>

      Wegen den Suchmaschinen. Ist nur für eine Intranet-Seite also nicht Suchmaschinenfeindlich ;-)

      gruss

      DD

      1. Hallihallo!

        Danke dir für die Hilfe.
        Habs mal probiert mit der HTML-Sache nur leider wird es noch immer im oberen Frame geöffnet. Hier mal der Quelltext incl. deinem Vorschlag mit <base target="haupt">

        <html>
        <head>
        <Title>-</Title>

        --------

        <body bgcolor="#00CCFF" text="#FFFFFF" link="#0099FF" vlink="#CCCCCC" alink="#FFFF99">

        --------
        Diesen Teil lass mal bitte weg. Hier denkt der Browser nämlich, der <head>- Bereich sei zu Ende, und fängt mit dem <body> an. Da jedoch das <base target="haupt"> in den <head>- Bereich gehört, wird die Notation in Deinem Fall ignoriert, vielleicht auch als Klartext oben auf der Seite angezeigt.
        Besser wäre es, hier ein
        [code lang=HTML]<link rel="stylesheet" type="text/css" href="pfad_zur_css_datei.css">[code]
        einzufügen.
        Innerhalb dieser dann hier referenzierten css- Datei kannst Du dann alle benötigten style- Eigenschaften definieren.
        Zum Einstieg in CSS empfehle ich dieses Kapitel.

        <base target="haupt">

        Diese Zeile kannst Du wieder entfernen. Dein Menü basiert nämlich auf Javascript, und diese Anweisung gilt nur für ganz normale HTML- Verweise á la <a href="news.htm">.

        </head>
        <body>
        <center>
        <table border><table width=100%>
        <tr>
        <th width=200>
        <th valign=bottom>
        <th align=right width=200 valign=bottom>
        <form name="jump">
        <select name="menu" onChange="location=document.jump.menu.options[document.jump.menu.selectedIndex].value;" value="GO">

        Diese Zeile musst Du ändern in
        [code lang=HTML]
        <select name="menu" onChange="top.haupt.location.href=this.options[this.selectedIndex].value;" value="GO">
        [code]
        Wie Du siehst, habe ich gleichzeitig noch die Codewürmer
        document.jump.menu
        in ein kurzes und knackiges
        this
        verwandelt. Das macht den Code lesbarer, falls man noch mal ran muss.
        Eine ausführliche Erklärung dazu findest Du hier.

        <option value="http://">Bereich auswählen</option>
        <option value="http://news.htm">News</option>
        <option value="http://222">222</option>
        <option value="http://333">333</option>
        <option value="http://444">444</option>
        <option value="http://555">555</option>
        <option value="http://666">666</option>
        <option value="http://777">777</option>
        <option value="http://888">888</option>
        <option value="http://999">999</option>
        </select>
        </form>
        </tr>
        </table>
        <br>
        </body>
        </html>

        Wegen den Suchmaschinen. Ist nur für eine Intranet-Seite also nicht Suchmaschinenfeindlich ;-)

        Solange in Eurem Intranet alle Javascript aktiviert haben und alle den Internet Explorer benutzen*, geht das ja. :)

        gruss

        DD

        Viele liebe Grüße,
        Der Dicki

        * Der Internet Explorer geht vor allem bei der javascriptmäßigen Benennung von Objekten völlig anders zu Werke als standardkonforme Browser.

        1. Hallihallo!

          Hallihallo!

          Danke dir für die Hilfe.
          Habs mal probiert mit der HTML-Sache nur leider wird es noch immer im oberen Frame geöffnet. Hier mal der Quelltext incl. deinem Vorschlag mit <base target="haupt">

          <html>
          <head>
          <Title>-</Title>


          <body bgcolor="#00CCFF" text="#FFFFFF" link="#0099FF" vlink="#CCCCCC" alink="#FFFF99">


          Diesen Teil lass mal bitte weg. Hier denkt der Browser nämlich, der <head>- Bereich sei zu Ende, und fängt mit dem <body> an. Da jedoch das <base target="haupt"> in den <head>- Bereich gehört, wird die Notation in Deinem Fall ignoriert, vielleicht auch als Klartext oben auf der Seite angezeigt.
          Besser wäre es, hier ein
          <link rel="stylesheet" type="text/css" href="pfad_zur_css_datei.css">
          einzufügen.
          Innerhalb dieser dann hier referenzierten css- Datei kannst Du dann alle benötigten style- Eigenschaften definieren.
          Zum Einstieg in CSS empfehle ich dieses Kapitel.

          <base target="haupt">
          Diese Zeile kannst Du wieder entfernen. Dein Menü basiert nämlich auf Javascript, und diese Anweisung gilt nur für ganz normale HTML- Verweise á la <a href="news.htm">.

          </head>
          <body>
          <center>
          <table border><table width=100%>
          <tr>
          <th width=200>
          <th valign=bottom>
          <th align=right width=200 valign=bottom>
          <form name="jump">
          <select name="menu" onChange="location=document.jump.menu.options[document.jump.menu.selectedIndex].value;" value="GO">
          Diese Zeile musst Du ändern in

          <select name="menu" onChange="top.haupt.location.href=this.options[this.selectedIndex].value;" value="GO">

          
          > Wie Du siehst, habe ich gleichzeitig noch die Codewürmer  
          > document.jump.menu  
          > in ein kurzes und knackiges  
          > this  
          > verwandelt. Das macht den Code lesbarer, falls man noch mal ran muss.  
          > Eine ausführliche Erklärung dazu findest Du [hier](http://de.selfhtml.org/javascript/sprache/objekte.htm#this).  
          >   
          >   
          >   
          >   
          > > <option value="http://">Bereich auswählen</option>  
          > > <option value="http://news.htm">News</option>  
          > > <option value="http://222">222</option>  
          > > <option value="http://333">333</option>  
          > > <option value="http://444">444</option>  
          > > <option value="http://555">555</option>  
          > > <option value="http://666">666</option>  
          > > <option value="http://777">777</option>  
          > > <option value="http://888">888</option>  
          > > <option value="http://999">999</option>  
          > > </select>  
          > > </form>  
          > > </tr>  
          > > </table>  
          > > <br>  
          > > </body>  
          > > </html>  
          > >   
          > > Wegen den Suchmaschinen. Ist nur für eine Intranet-Seite also nicht Suchmaschinenfeindlich ;-)  
          > >   
          > Solange in Eurem Intranet alle Javascript aktiviert haben und alle den Internet Explorer benutzen\*, geht das ja. :)  
          >   
          >   
          > > gruss  
          > >   
          > > DD  
          > Viele liebe Grüße,  
          > Der Dicki  
          >   
          >   
          > \* Der Internet Explorer geht vor allem bei der javascriptmäßigen Benennung von Objekten völlig anders zu Werke als standardkonforme Browser.  
          
          Viele liebe Grüße,  
          Der Dicki
          
        2. Perfekt!
          Danke Dir für die Hilfe!

          gruss und guten Rutsch !

          DD