geschachtelte frames + java
amano[fR]
- javascript
mOIn,
kurze frage hab da so vier ineinander geschachtelte frames (index.html=framset, main.html=frameset, menu.html=frames)und möchte wenn eine seite im 'main' bereich angezeigt wird auch gleich das menu wechselen.
Hab das so versucht
----
<script type="text/javascript">
<!--
function frame(URI,F) {
frame=eval("parent."+F);
frame.location.href = URI;
}
//-->
</script>
<a href="javascript:frame('index.html','leftmenu')">TEST</a>
----
geht aber nicht weil ich mich ja selber im framset 'main.html' befinde und versuch auf was in 'menu.html' zu verweisen.
Wie geht das??
danke amano
originell:
mOIn,
geht auch MoiN ??
kurze frage hab da so vier ineinander geschachtelte frames (index.html=framset, main.html=frameset, menu.html=frames)und möchte wenn eine seite im 'main' bereich angezeigt wird auch gleich das menu wechselen.
Das liest sich, als wärs eine der "ach-nicht-schon-wieder"-Fragen. Schau mal nach, ob dir http://selfhtml.teamone.de/javascript/beispiele/zweiframes.htm weiterhilft
Grüße aus Berlin
Christoph S.
originell:
mOIn,
geht auch MoiN ??
kurze frage hab da so vier ineinander geschachtelte frames (index.html=framset, main.html=frameset, menu.html=frames)und möchte wenn eine seite im 'main' bereich angezeigt wird auch gleich das menu wechselen.
Das liest sich, als wärs eine der "ach-nicht-schon-wieder"-Fragen. Schau mal nach, ob dir http://selfhtml.teamone.de/javascript/beispiele/zweiframes.htm weiterhilft
Grüße aus Berlin
dank dir
das ist ansicht genau das, was ich scuhte. nur das ich (noch) kein java-script kann :->>. also werd ichs mir wohl endlich zu gemüte führen müssen
dennoch danke
auch grüße aus berlin
catty
Ups, das hier sollte einen Beitrag weiter unten sein ;-)
originell:
mOIn,
geht auch MoiN ??
kurze frage hab da so vier ineinander geschachtelte frames (index.html=framset, main.html=frameset, menu.html=frames)und möchte wenn eine seite im 'main' bereich angezeigt wird auch gleich das menu wechselen.
Das liest sich, als wärs eine der "ach-nicht-schon-wieder"-Fragen. Schau mal nach, ob dir http://selfhtml.teamone.de/javascript/beispiele/zweiframes.htm weiterhilft
Grüße aus Berlin
Christoph S.
also wenn sollte man auch die wichtigen sachen von der eigendlichen post drin lassen und die war...
Hab das so versucht
----
<script type="text/javascript">
<!--
function frame(URI,F) {
frame=eval("parent."+F);
frame.location.href = URI;
}
//-->
</script>
<a href="javascript:frame('index.html','leftmenu')">TEST</a>
----
das ist am end genau die funktion von der du da sprichts nur für einen frame das eigendliche problem entsteht ja durch ganz was anderes dadurch das ich mehrere FRAMESETS ineinander verschalchtel, und die funktion eval dann die objectnamen nicht mehr auflösen kann... denke ich bin halt keine java experte.
macht aber nix ;),
thx anyway bye
tach ;-)
also wenn sollte man auch die wichtigen sachen von der eigendlichen post drin lassen und die war...
Hab das so versucht
<script type="text/javascript">
<!--
function frame(URI,F) {
frame=eval("parent."+F);
frame.location.href = URI;
}
//-->
</script>
<a href="javascript:frame('index.html','leftmenu')">TEST</a>
und ich hab das deswegen weggelassen, weil es wahrscheinlich richtig falsch ist. Nach deinem posting gehts dir doch um richtige Framesets; aber was du hier versuchst, ist das "Abdelegieren" eines Frames, für das nicht einmal ein Frameset vorgegeben ist, an eine URI. Das ist zwar nicht völlig unmglich, kann aber so nicht funktionieren. Du willst zum Beispiel mit
javascript:frame('index.html','leftmenu')"
einen Befehl aufgerufen, für denm es den Bestandteil 'leftmeu' in deinem Code gar nicht gibt.
Insgesamt scheint dir gar nicht klar zu sein, wo Javascript und wie es eingesetzt werden kann ... auch bei solchen Fragen, wie du sie hast. Dir scheint auch nicht klar zu sein, daß Javascript überhaupt nichts mit Java zu tun hat
das ist am end genau die funktion von der du da sprichts nur für einen frame das eigendliche problem entsteht ja durch ganz was anderes dadurch das ich mehrere FRAMESETS ineinander verschalchtel
Wieviele Framesets du definierst, ist völlig wurscht, "parent" ist immer das oberste. Außerdem mußt du deinen Frames auch noch Namen geben, wenn du auf sie verlinken willst, und sobald ein Frame einen Namen hat, ist es ziemlich egal, in welchem Frameset das gute Stück liegt. Wichtig ist lediglich, daß sich alles im selben HTML-Dokument befindet (obwohl man natürlich auch zu Frames in anderen Framesets bzw. anderen HTML-Dokumenten verlinken kann).
Am besten, du liest nochmal gründlich das Kapitel über Frames in SELFHTML nach.
Christoph S.
Moin
Wieviele Framesets du definierst, ist völlig wurscht, "parent" ist immer das oberste.
Wie war das grad mit 'richtig falsch'? :)
parent heisst natürlich das Frame das eine Ebene höher als das aktuelle liegt, das oberste heisst top.
Es steht zwar nicht in Selfhtml ausdrücklich erwähnt, aber bei allen meinen Versuchen hat es bei verschachtelten Frames gereicht top.namedesframes anzusprechen, was dann schon gleich das richtige Frame anspricht, egal wie tief verschachtelt. Du brauchst also bloss allen deinen Frames Namen geben, das parent in deinem Code durch ein top zu ersetzen und im Prinzip müsste es dann gehen. Falls nicht, musst du der Objekthierarchie folgen und sowas wie top.obersterframe1.unterframe2.unterunterframe1 ansprechen.
--
Henryk Plötz
Grüße aus Berlin
hm, Henryk,
ich gebe zu, da fehlen drei Wörter:
Wieviele Framesets du definierst, ist völlig wurscht, "parent" ist immer das oberste.
Da hätte ich korrekt schreiben müssen: " ... ist immer das oberste des aktuellen Framesets" - siehe http://www.w3.org/TR/html4/types.html#type-frame-target
parent heisst natürlich das Frame das eine Ebene höher als das aktuelle liegt, das oberste heisst top.
siehe der link oben
Es steht zwar nicht in Selfhtml ausdrücklich erwähnt, aber bei allen meinen Versuchen hat es bei verschachtelten Frames gereicht top.namedesframes anzusprechen, was dann schon gleich das richtige Frame anspricht, egal wie tief verschachtelt.
Mit "top" gehst du erstmal ganz raus aus der "Rahmenkonstruktion", und mit "namedesframes" gehst du wieder rein - und zwar zu dem namentlich spezifizierten Rahmen, egal, wie tief er in der Rahmenhierarchie verschachtelt ist.
Du brauchst also bloss allen deinen Frames Namen geben, das parent in deinem Code durch ein top zu ersetzen und im Prinzip müsste es dann gehen.
Kann passieren, daß das doch nicht klappt, je nachdem, wie die Verschachtelung aussieht. Die Namensgebung ist allerdings essentiell
Falls nicht, musst du der Objekthierarchie folgen und sowas wie top.obersterframe1.unterframe2.unterunterframe1 ansprechen.
leichter ist es, stattdessen "Nummern" zu vergeben. In der Art:
parent.frames[0].location.href = irgendwas
Grüße auch aus Berlin
Christoph S.