Hallo!
Moin nochmal!
Wie spreche ich denn dann den anderen Frame an ???
evtl.: <body onload="nav.location.reload()"> *nav ist mein Frame*
Ich erkläre es dir mal komplett:
Frames bilden einen Baum in Javascript, genauso wie verschiedene Verzeichnisse auf Festplatte. "top" ist das Hauptverzeichnis, gleichbedeutend mit dem gesamten Browserfenster.
top <- da ist das erste Frameset drin
|
+----name1 <- da ist eine normale HTML-Datei drin
|
+----name2 <- da ist noch ein Frameset drin.
|
+----untername1
|
+----untername2
Wenn du jetzt den Frame "untername2" ansprechen willst, geht das mit "top.name2.untername2"
Wenn du dich im Frameset "untername1" befindest, geht das aber auch mit "parent.untername2".
Wenn du dich im Frameset "name2" befindest, kannst du mit "untername2" auch direkt auf den Frame zugreifen.
An alle Zugriffsarten kannst du beispielsweise ".location.href" dranhängen.
Das ist ganz identisch mit Links:
Variante 1 absolut: href="/verzeichnis2/unterverzeichnis2/datei.html"
Variante 2 relativ: href="../unterverzeichnis2/datei.html"
Konkret: wenn du den Frame "nav" ansprechen willst, mußt du entweder von "top" ausgehend den Weg zu diesem Frameset beschreiten (das kann so einfach sein wie "top.nav"), oder ausgehend vom Frameset, in dem du das Javascript aufrufst, mit parent losgehen ("parent.nav" kann funktionieren).
Es hängt einfach davon ab, wie dein Frameset aufgebaut ist.
- Sven Rautenberg