Mit Link zwei Frames öffnen
Holger Woerner
- javascript
Ich bin Anfänger im HTML-Programmieren und stehe vor dem Problem, dass ich für eine komplexere, schon vorhandene Homepage (die aus 4 Frames besteht) eine Erweiterung programmieren muss. Dabei ist es unumgänglich, dass beim Anklicken eines Verweises gleichzeitig zwei Frames neu geladen werden, wobei einer davon der Frame ist, in dem der Link angeklickt wird.
Der Einfachheit halber wollte ich das mal mit einem schon fertigen JavaScript-Modul testen, bekomme aber immer eine Fehlermeldung und weiss nicht, was ich falsch gemacht habe.
Der Frameset im Hauptdokument sieht so aus:
___________________
<html>
<head>
</head>
<frameset>
<frameset frameborder="0" framespacing="0" border="0" cols="165,*">
<frameset frameborder="0" framespacing="0" border="0" rows="210,*">
<frame src="lo.html" name="lo" scrolling="no">
<frame src="lu_e.html" name="lu" scrolling="auto">
</frameset>
<frameset frameborder="0" framespacing="0" border="0" rows="125,*">
<frame src="ro_d.html" name="ro" scrolling="no">
<frame src="index_ru.html" name="ru" scrolling="auto">
</frameset>
</frameset>
</frameset>
</html>
___________________
Der JavaScript-Aufruf im Fenster 'ru' sieht so aus:
___________________
<html>
<head>
<script language="JavaScript">
<!--
function ZweiFrames(URL1,Fr1Nummer,URL2,Fr2Nummer)
{
parent.frames[Fr1Nummer].location.href=URL1;
parent.frames[Fr2Nummer].location.href=URL2;
}
//-->
</script>
</head>
<a href="javascript:ZweiFrames('lu_d.html',2,'../lin_dt.html',4)">deutsche Version</a>
...
___________________
Ich habe die Frames im Frameset einfach durchgezählt (1 bis 4). Da die Frames 'lu' und 'ru' die sind, in denen ich die neuen Files anzeigen möchte, steht in der Funktion '2' und '4'.
Wer kann mir helfen?
Hallo Holger,
versuche mal folgendes:
<script language="JavaScript">
<!--
function ZweiFrames(URL1,Fr1Nummer,URL2)
{
parent.frames[Fr1Nummer].location.href=URL1;
self.location.href=URL2;
}
//-->
</script>
</head>
<a href="javascript:ZweiFrames('lu_d.html','lu','../lin_dt.html')">deutsche Version</a>
Also statt der Nummer den Namen verwenden und das Frame "ru" einfach über self.location.href ändern, den Parameter also weglassen.
Ich hoffe, das klappt.
Viele Grüße
Antje
Danke,
an Antje und Dieter. Hat beides funktioniert und ich habe mir noch mehr grau gefärbte Haare erspart.
Hallo Holger,
<a href="javascript:ZweiFrames('lu_d.html',2,'../lin_dt.html',4)">deutsche Version</a>
Ich habe die Frames im Frameset einfach durchgezählt (1 bis 4). Da die Frames 'lu' und 'ru' die sind, in denen ich die neuen Files anzeigen möchte, steht in der Funktion '2' und '4'.
Wer kann mir helfen?
Fang einfach bei 0 an zu zählen. Der Aufruf sieht dann so aus:
<a href="javascript:ZweiFrames('lu_d.html',1,'../lin_dt.html',3)">deutsche Version</a>
... und schon klappt es auch mit den Frames ;-))
Dieter