Text ersetzen
fireeye
- javascript
Ich folgende Konstruktion (reduzierte Darstellung):
<frameset cols="250,*".....'>
<frameset rows="77,*,85" ....>
<frame name="vas" ..... src="..... vas.html">
<frame name="toc" ..... src="..... toc.html">
<frame name="adv" ..... src="..... adv.html">
</frameset>',
<frameset rows="77,*" ..... >
<frame name="hdl" ..... src="..... hdl.html">
<frame name="content" ...... src="...... xxx.html">
</frameset>
</frameset>
in "xxx.html" läuft dieses Script ab:
parent.hdl.gethdl (document.title);
in "hdl.html" soll die Funktion ablaufen (macht es auch):
function gethdl (s) {
}
zunächst ist die v.g. Funktion leer - noch :-)), da ich i.A. nicht weiß wie ich den Text, der in "s" steht zwischen <h3> und </h3>
darstellen kann. In "toc" läuft eine hierachische Veerzeichnisfunktion, die den Inhalt für "content" ("xxx.html") bestimmt. Wechselt "content", dann läuft der Script "parent.hdl.gethdl (document.title);", der funktioniert auch und liefert den Titel in "hdl" ab. Jetzt soll im Frame "hdl" der Text gewechselt werden :-), aber wie :D ?
Hat jemand einen Tip?
Danke im voraus!
Gruß fireeye
hi,
Jetzt soll im Frame "hdl" der Text gewechselt werden :-), aber wie :D ?
zugriff auf frames
inhalt eines textknotens austauschen
gruß,
wahsaga
hi,
Jetzt soll im Frame "hdl" der Text gewechselt werden :-), aber wie :D ?
zugriff auf frames
inhalt eines textknotens austauschengruß,
wahsaga
Hier meine Lösung:
function writeExpr (expr) {if (writing) eval (writing + "('" + expr + "')");}
window.setTimeout("checkhdl()",100);
var hdlx = parent.content.document.title;
var nextUrl = document.URL;
function checkhdl () {
if (hdlx != parent.content.document.title) window.location.href = nextUrl;
}
writeExpr ('<h3>' + hdlx + '</h3>');
"writing" ist ein Workaround, um div. Browser zu befriedigen
"window.location.href = nextUrl" ist zwar ein wenig krumm, löst aber einen neuen Aufbau der Seite in dem eignen Frame aus!!! geht vielleicht eleganter, erfüllt aber zur Zeit seinen Zweck
function checkhdl() {
if (parent.hdl.hdlx != document.title) parent.hdl.checkhdl();
}
window.setTimeout("checkhdl()",100);
========
Nach Aufruf der neuen Seite im Frame "content" wird nach 100 ms die Funktion "checkhdl" im "content"-Frame ausgeführt. "hdlx" ist eine Variable im Dokument "hdl.html", die als Textspeicher funktioniert und den Titel des "content"-Frames aufnimmt. Ist der Inhalt von "hdlx" verschieden zu "document.title" im "content"-Frame, so wird veranlaßt, im "hdl.html"-Dokument des "hdl"-Frames die Funktion "checkhdl" auszuführen, dort wird erneut "hdlx" überprüft, was dazu führt, die Seite im "hdl"-Frame neu aufzubauen.
Da mag zwar ein wenig umständlich aussehen, stellt aber sicher, daß beim Laden der kompletten Seite, die Anzeige des richtigen Titels erfolgt und wenn später die Seite im "content"-Frame wechselt - es gibt verschiedene Möglichkeiten die Seite in dem Frame zu wechseln -, daß der Titel im "hdl"-Frame immer passend zum Inhalt des "content"-Frames erscheint.
Gruß f