iFrame bzw. Layer per Javascript füllen
Christoph Pingel
- javascript
0 Cyx23
Hallo,
gleich noch eine zweite Frage ... wie kann ich per Javascript in einen Layer (oder iLayer) bzw. in ein iFrame schreiben ?
Der Hintergrund ... ich habe ein framebasierten Aufbau der Seite. Eine spezielle HTML Seite in dem Frame soll als eine Art Gateway- bzw. Datenhaltungsfenster zwischen den anderen Seiten (die auch von meinem Server kommen) dienen. Damit aber nun sichergestellt ist, daß auf die Daten immer zugegriffen werden kann, kann ich die nicht per cgi-Script erstellen und dann ab und an reloaden oder so (denn eine andere Seite, die eventuell gerade geladen wurde will eventuell genau in diesem Zeitpunkt auf jene Gateway-Seite zugreifen, um die Daten zu lesen/schreiben) ... halten tue ich die Daten in versteckten input-Feldern ... aber jetzt möchte ich z.B. den aktuellen Usernamen auch auf der Seite noch anzeigen und da ich das HTML bzw. den variierenden Text nicht per cgi erstellen/schreiben kann, muß ich das ja per Javascript tun und je nach Browser den Namen in ein iFrame oder iLayer schreiben. Ich bekomme das nur nicht hin. Die Input-Felder per CSS einfach ansehnlich zu gestalten haut auch nicht hin, da das im Netscape unter Version 4.7x nicht ordentlich dargestellt wird (die Kompatibilität soll zu weit runter sein wie nur möglich).
Kann mir da jemand helfen, wie ich das mache ?
MFG,
Christoph Pingel
Hallo,
gleich noch eine zweite Frage ... wie kann ich per Javascript in einen Layer (oder iLayer) bzw. in ein iFrame schreiben ?
Der Hintergrund ... ich habe ein framebasierten Aufbau der Seite. Eine spezielle HTML Seite in dem Frame soll als eine Art Gateway- bzw. Datenhaltungsfenster zwischen den anderen Seiten (die auch von meinem Server kommen) dienen. Damit aber nun sichergestellt ist, daß auf die Daten immer zugegriffen werden kann, kann ich die nicht per cgi-Script erstellen und dann ab und an reloaden oder so (denn eine andere Seite, die eventuell gerade geladen wurde will eventuell genau in diesem Zeitpunkt auf jene Gateway-Seite zugreifen, um die Daten zu lesen/schreiben) ... halten tue ich die Daten in versteckten input-Feldern ... aber jetzt möchte ich z.B. den aktuellen Usernamen auch auf der Seite noch anzeigen und da ich das HTML bzw. den variierenden Text nicht per cgi erstellen/schreiben kann, muß ich das ja per Javascript tun und je nach Browser den Namen in ein iFrame oder iLayer schreiben. Ich bekomme das nur nicht hin. Die Input-Felder per CSS einfach ansehnlich zu gestalten haut auch nicht hin, da das im Netscape unter Version 4.7x nicht ordentlich dargestellt wird (die Kompatibilität soll zu weit runter sein wie nur möglich).
iframes sollten wie frames einfach adressierbar sein, location.href= usw., und bei layern oder positionierten divs unter Netscape 4 document.layers[].load('xy.html'), Beispiele gibt es hier:http://www.lipfert-malik.de/webdesign/tutorial/css.html#Iframe
Grüsse
Cyx23
Hallo,
iframes sollten wie frames einfach adressierbar sein, location.href= usw., und bei layern oder positionierten divs unter Netscape 4 document.layers[].load('xy.html'), Beispiele gibt es hier:http://www.lipfert-malik.de/webdesign/tutorial/css.html#Iframe
Ähm ... ich wollte keine fertige HTML Datei da drin anzeigen sondern den HTML Code erst in der aufrufenden HTML Datei dynamisch erzeugen ... der iLayer bzw. iFrame steht ja dann nur an der Stelle, wo ich die Dynamik benötige ... also z.B. Username: <iframe ....>
MFG,
Christoph Pingel
Hallo,
iframes sollten wie frames einfach adressierbar sein, location.href= usw., und bei layern oder positionierten divs unter Netscape 4 document.layers[].load('xy.html'), Beispiele gibt es hier:http://www.lipfert-malik.de/webdesign/tutorial/css.html#Iframe
Ähm ... ich wollte keine fertige HTML Datei da drin anzeigen sondern den HTML Code erst in der aufrufenden HTML Datei dynamisch erzeugen ... der iLayer bzw. iFrame steht ja dann nur an der Stelle, wo ich die Dynamik benötige ... also z.B. Username: <iframe ....>
dann brauchst du eigentlich innerHTML und ein Div oder überseh ich da was?
Grüsse
Cyx23
Hi,
dann brauchst du eigentlich innerHTML und ein Div oder überseh ich da was?
Keine Ahnung :) ... mir ist jede Lösung recht, die auch bis NS 4.7x bzw. IE 4 runter kompatibel ist (ideal wäre natürlich ab NS 4.x ) ... die Daten übergebe ich an die Seite per Javascript und wie es dann weiter geht, ist mir erstmal egal, solange das in 99,9% :) der Browserfälle funktioniert.
Und wie würde ich das mit innerHTML etc. machen ? - ausgehend davon, daß ich das ja per Javascript setzen/schreiben/zuweisen muß. Davon hab ich nämlich überhaupt keine Ahnung - wenn es mit was anderem als Javascript funktioniert wäre mir auch recht, solange diese statische HTML Seite, in der das dann steht, nicht neu geladen werden muß (so daß jederzeit auf die input-Felder zugegriffen werden kann) - ich bin halt gerade erst am entwickeln und da bin ich erstmal für jede Methode offen, solange die Browservoraussetzungen passen.
MFG,
Christoph Pingel
Hallo,
dann brauchst du eigentlich innerHTML und ein Div oder überseh ich da was?
Keine Ahnung :) ... mir ist jede Lösung recht, die auch bis NS 4.7x bzw. IE 4 runter kompatibel ist (ideal wäre natürlich ab NS 4.x ) ... die Daten übergebe ich an die Seite per Javascript und wie es dann weiter geht, ist mir erstmal egal, solange das in 99,9% :) der Browserfälle funktioniert.
Und wie würde ich das mit innerHTML etc. machen ? - ausgehend davon, daß ich das ja per Javascript setzen/schreiben/zuweisen muß. Davon hab ich nämlich überhaupt keine Ahnung - wenn es mit was anderem als Javascript funktioniert wäre mir auch recht, solange diese statische HTML Seite, in der das dann steht, nicht neu geladen werden muß (so daß jederzeit auf die input-Felder zugegriffen werden kann) - ich bin halt gerade erst am entwickeln und da bin ich erstmal für jede Methode offen, solange die Browservoraussetzungen passen.
womöglich brauchst du auch nur document.write, wenn die Seite sich -nur- beim Laden dynamisch verhalten soll und nach dem Laden gar nicht mehr verändert wird.
Du kannst ja mal in _self_html, ggf. auch im archiv, recherchieren.
Z.B. 'document.write', 'innerHTML' (da müsste für Netscape 4 noch eine varaiante entwickelt werden), interesant u.U. auch 'Werteübergabe', 'location.search', 'loaction.hash', ggf. 'dhtml'.
In deinem Sinne ansprechbar wären wohl auch noch textarea oder sichtbare Formularfelder.
Grüsse
Cyx23
Hallo,
wenn die Seite sich -nur- beim Laden dynamisch verhalten soll
Nein, soll sie nicht. Die Seite selbst ist und bleibt geladen und während des rumsurfens auf der HauptSeite sollen ständig neue Daten geschrieben werden können - also der eine Ausschnitt auf der HTML-Seite soll ständig dynamisch beschrieben werden können (nicht geschrieben und gelesen, das mach ich mit den hidden-input Feldern) und nicht nur einmal am Anfang.
In deinem Sinne ansprechbar wären wohl auch noch textarea oder
sichtbare Formularfelder.
Und die möchte ich ja gerade nicht verwenden, da sich die Anzeige auch in das Design der Seite einpassen soll und das macht sich mit grauen Kästen schlecht - und eine Anpassung per CSS funktioniert unter Netscape nicht - außerdem soll der User ja die Daten nicht selbstständig ändern können, was er aber bei einem sichtbaren Formularfeld machen könnte.
MFG,
Christoph
Hallo nochmal,
wenn die Seite sich -nur- beim Laden dynamisch verhalten soll
Nein, soll sie nicht. Die Seite selbst ist und bleibt geladen und während des rumsurfens auf der HauptSeite sollen ständig neue Daten geschrieben werden können - also der eine Ausschnitt auf der HTML-Seite soll ständig dynamisch beschrieben werden können (nicht geschrieben und gelesen, das mach ich mit den hidden-input Feldern) und nicht nur einmal am Anfang.
also entweder 'innerHTML' und für Netscape 4 open()..write()..close().., oder vielleicht hier eleganter iframe und div(NC4) wie schon gepostet ansprechen, und eine Hilfsdatei laden.
In der Hilfsdatei ein document.write,: <script>document.write(self.location.search)</script>
Variablenübergabe per hash / search: <iframe src="a.htm?Tester" frameborder=0></iframe>
Nun musst du selbst mal weiter sehen ob und was mit Netscape 4 geht und wie du das mehrmals ansprichst.
Grüsse
Cyx23
Hallo Cyx23,
also entweder 'innerHTML' und für Netscape 4 open()..write()..close().., oder vielleicht hier eleganter iframe und div(NC4) wie schon gepostet ansprechen, und eine Hilfsdatei laden.
"innerHTML" funktioniert nur beim all-Objekt, das nur der IE kennt. Daher denke ich, scheidet es aus.
Bei aktuellen Browser, die das DOM unterstützen, kannst Du die InhalteDeiner Seite dynamisch ändern.
</dhtml/modelle/dom.htm#elementinhalte>
Für NS 4.x kannst Du Layer definieren. Da der Layerinhalt wiederum ein document-Objekt ist, kannst mit entsprechender Addressierung ein document.write im Layer ausführen lassen.
Hoffe, es hilt Dir weiter...
Grüße,
bluntburn
Oops, natürlich war Christoph angesprochen...
Sorry, bluntburn
"innerHTML" funktioniert nur beim all-Objekt, das nur der IE kennt. Daher denke ich, scheidet es aus.
[pref:t=58538&m=328629]