Framename bestimmen

gmichel24

Grünschnabel
Hallo,

ich hab da mal ein Problem und keine Ahnung wie ich nach der Lösung suchen soll...

Ich habe eine Seite mit einem Frameset

Frame1=Titel
Frame2=Nav
Frame3=Main

Wenn z.B. jemand eine meiner Seiten direkt verlinkt fehlt ja Navigation und Titel.

Kann ich mit Javasript auslesen ob sich die verlinkte Seite in einem meiner Frames befindet, und wenn nicht das sie meine komplette HP lädt, also mit Frameset und so?

Hoffe das ist verständlich.

Danke
 
Hi,

füge in den HEAD der Dokumente, die das Frameset nachladen sollen, folgendes Script ein:
Code:
<script type="text/javascript">
  <!--

  // Frameset nachladen
  if(parent.frames.length == 0)
    top.location.href = "index.html?" + location.href;

//  -->
</script>
Es wird geprüft, ob sich das Dokument in einem Frameset befindet. Ist das nicht der Fall, wird
die Index-Datei aufgerufen und der Pfad zum aktuellen Dokument übergeben.

In der Index-Datei kannst du die Parameter aus der URL auswerten und entsprechend reagieren.
Ich habe noch ein derartiges Frameset hier. Die Frames, die Namen und die Dokumente musst
du allerdings noch anpassen.
HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
   "http://www.w3.org/TR/html4/frameset.dtd">
<html>
<head>
<title>FrameIndex</title>
</head>
<script language="javascript" type="text/javascript">
  <!--
  // Framset aufbauen
  document.write('<frameset frameborder="no" framespacing="0" rows="10%,90%">');
    document.write('<frame style="border-right: 1px solid burlywood;" src="top.html" name="titleFrame">');
    document.write('<frameset frameborder="no" framespacing="0" cols="200,*">');
      document.write('<frame style="border-right: 1px solid burlywood;" src="navigation.html" name="navFrame">');
      if(window.location.search){
        // Benötigte URL extrahieren
        strURL = String(window.location.search).substr(1, String(window.location.search).length);
        // FrameSet mit extrahiertem Dokument aufrufen
        document.write('<frame style="border-right: 1px solid black;" src="'+strURL+'" name="dokFrame">');
      }else{
        // Frameset mit StandardDokument aufrufen
        document.write('<frame style="border-right: 1px solid black;" src="dok1.html" name="dokFrame">');
      }
    document.write('</frameset>');
    document.write('<noframes>Wird angezeigt, wenn der Browser keine Frames anzeigen kann</noframes>');
  document.write('</frameset>');
  -->
</script>
<noscript>
  <frameset rows="10%, 90%">
    <frame src="top.html" name="titleFrame">
    <frameset cols="30%,70%">
       <frame src="navigation.html" name="navFrame">
       <frame src="dok1.html" name="dokFrame">
    </frameset>
    <noframes>
      Wird angezeigt, wenn der Browser keine Frames anzeigen kann
    </noframes>
  </frameset>
</noscript>
</html>
Ich hoffe, du kannst etwas damit anfangen.

Ciao
Quaese
 

Neue Beiträge

Zurück