Forum Doku Wiki Blog

Forumsarchiv 2007, November
auf window.location.href mit window.onload warten

archivierte Beiträge lesen

  1. (JAVASCRIPT) auf window.location.href mit window.onload warten von starwarskid1, 26. 11. 2007, 00:12

auf window.location.href mit window.onload warten

Der folgende Beitrag wurde am 26. 11. 2007, 00:12 Uhr von starwarskid1 veröffentlicht.

Hallo!

Meine aktuelle Seite ist "aktuelleseite.html". :)
Wenn ich in meinem Script das folgende schreibe:

window.location.href = "andereseite.htm";
alert(window.location.href);

wird mir die Adresse von "aktuelleseite.html" und nicht von "andereseite.htm" angezeigt. Das liegt wahrscheinlich daran, dass "andereseite.htm" noch nicht aufgebaut wurde, in der kurzen zeit.

wenn ich jetzt aber schreibe:

window.location.href = "andereseite.htm";
window.onload = f1;
function f1() {
  alert(window.location.href);
}

hilft das nicht weiter! Ich denke weil sich das "window" in "window.onload" auch noch auf "aktuelleseite.html" bezieht, oder?

wie kann ich aber sonst auf "andereseite.htm" warten? timeout ist nicht nur keine gute Lösung sondern klappt auch nicht.

auf window.location.href mit window.onload warten

Der folgende Beitrag wurde am 26. 11. 2007, 00:39 Uhr von Rouven veröffentlicht.

Hello,

> wie kann ich aber sonst auf "andereseite.htm" warten? timeout ist nicht nur keine gute Lösung sondern klappt auch nicht.
es ist ohne Hilfskonstrukte wie z.B. Frames nicht möglich, die aktuelle Seite auszutauschen und deine Skriptinstanz dabei überleben zu lassen. Entweder muss das Skript eine andere Umgebung haben, die konstant bleibt (--> Frame) oder sie muss selbst den inhaltlichen Wechsel der Seite vornehmen (z.B. AJAX).

MfG
Rouven

--
-------------------
sh:| fo:} ch:? rl:( br:& n4:{ ie:| mo:} va:) js:| de:] zu:| fl:( ss:) ls:& (SelfCode)

Let Bygones Be Bygones  --  Robert Pitscottie: "Chronicles of Scotland"

auf window.location.href mit window.onload warten

Der folgende Beitrag wurde am 27. 11. 2007, 16:38 Uhr von starwarskid1 veröffentlicht.

Hallo!

Danke für eure Antworten!

> Ein »Nebeneinander« von Dokumente und somit Scripten ist wie gesagt nicht möglich, aber auch i.d.R. nicht nötig. Wofür brauchst du das denn?

Ich brauche das weil ich bestimmte variablen mit bestimmten werten noch im aktuellen script die die neue seite nicht kennt/kennen kann habe. Genauer gesagt: meine alte seite bestimmt die divs die in der neuen seite sichtbar sind aufgrund von berechnungen die in der alten seite gemacht wurden!

Man hat mir woanders den Rat gegeben window.name als zwischenspeicher zu benutzen. Das ist eine ganz gute lösung. Oder?

> es ist ohne Hilfskonstrukte wie z.B. Frames nicht möglich, die aktuelle Seite auszutauschen und deine Skriptinstanz dabei überleben zu lassen. Entweder muss das Skript eine andere Umgebung haben, die konstant bleibt (--> Frame) oder sie muss selbst den inhaltlichen Wechsel der Seite vornehmen (z.B. AJAX).

> JavaScripte laufen immer von einem (einzigen) Dokument abhängig. Wechselst du das Dokument, wird das Script gestoppt, das neue Dokument geladen und das Script ausgeführt, was eventuell darin eingebunden ist.

Achso! Ich hatte schon gerätzelt wie sich die synchronisation bei gleichzeitig zugreifenden seiten auf das script verhält. :)

auf window.location.href mit window.onload warten

Der folgende Beitrag wurde am 26. 11. 2007, 22:57 Uhr von molily veröffentlicht.

Hallo,

JavaScripte laufen immer von einem (einzigen) Dokument abhängig. Wechselst du das Dokument, wird das Script gestoppt, das neue Dokument geladen und das Script ausgeführt, was eventuell darin eingebunden ist.

Also schreibst du diesen Code:

> window.onload = f1;
> function f1() {
>   alert(window.location.href);
> }

in das zweite Dokument, denn in dessen Kontext soll es ausgeführt werden.

> wie kann ich aber sonst auf "andereseite.htm" warten? timeout ist nicht nur keine gute Lösung sondern klappt auch nicht.

Ein »Nebeneinander« von Dokumente und somit Scripten ist wie gesagt nicht möglich, aber auch i.d.R. nicht nötig. Wofür brauchst du das denn?

Mathias
--
SELFHTML aktuell Weblog

auf window.location.href mit window.onload warten

Der folgende Beitrag wurde am 27. 11. 2007, 16:35 Uhr von starwarskid1 veröffentlicht.

Hallo!

Danke für eure Antworten!

> Ein »Nebeneinander« von Dokumente und somit Scripten ist wie gesagt nicht möglich, aber auch i.d.R. nicht nötig. Wofür brauchst du das denn?

Ich brauche das weil ich bestimmte variablen mit bestimmten werten noch im aktuellen script die die neue seite nicht kennt/kennen kann habe. Genauer gesagt: meine alte seite bestimmt die divs die in der neuen seite sichtbar sind aufgrund von berechnungen die in der alten seite gemacht wurden!

Man hat mir woanders den Rat gegeben window.name als zwischenspeicher zu benutzen. Das ist eine ganz gute lösung. Oder?

> es ist ohne Hilfskonstrukte wie z.B. Frames nicht möglich, die aktuelle Seite auszutauschen und deine Skriptinstanz dabei überleben zu lassen. Entweder muss das Skript eine andere Umgebung haben, die konstant bleibt (--> Frame) oder sie muss selbst den inhaltlichen Wechsel der Seite vornehmen (z.B. AJAX).

> JavaScripte laufen immer von einem (einzigen) Dokument abhängig. Wechselst du das Dokument, wird das Script gestoppt, das neue Dokument geladen und das Script ausgeführt, was eventuell darin eingebunden ist.

Achso! Ich hatte schon gerätzelt wie sich die synchronisation bei gleichzeitig zugreifenden seiten auf das script verhält. :)


auf window.location.href mit window.onload warten

Der folgende Beitrag wurde am 27. 11. 2007, 17:00 Uhr von molily veröffentlicht.

Hallo,

> meine alte seite bestimmt die divs die in der neuen seite sichtbar sind aufgrund von berechnungen die in der alten seite gemacht wurden!
>
> Man hat mir woanders den Rat gegeben window.name als zwischenspeicher zu benutzen. Das ist eine ganz gute lösung. Oder?

Kommt darauf an, was du da bastelst - eine serverseitig-dynamische Webanwendung oder eine bloße clientseitige JavaScript-Sache.

Wenn ersteres: Dann kannst du die Daten einfach wie üblich zum Server senden, der dann eine entsprechend angepasste Seite zurückliefert. Wenn letzteres: Wenn du JavaScript voraussetzt, fragt sich, wieso du überhaupt zwei Dokumente einsetzt (Stuchwort Single Page Application). Wenn du anderweitig Cookies voraussetzt, kannst du auch Cookies verwenden. Usw. Was die sinnvollste Lösung ist, hängt von verschiedenen Faktoren ab.

Siehe auch:
http://aktuell.de.selfhtml.org/artikel/javascript/wertuebergabe/
http://aktuell.de.selfhtml.org/artikel/javascript/wertuebergabe-2/

Mathias
--
SELFHTML aktuell Weblog

auf window.location.href mit window.onload warten

Der folgende Beitrag wurde am 27. 11. 2007, 20:06 Uhr von starwarskid1 veröffentlicht.

> Wenn letzteres: Wenn du JavaScript voraussetzt, fragt sich, wieso du überhaupt zwei Dokumente einsetzt (Stuchwort Single Page Application).

Hallo Mathias,

danke für die Unterstützung! :)

Meine applikation ist zurzeit rein clientseitig. Da ich aber immoment auch noch mit domain-übergreifendem-cross-frame- scripting zu kämpfen habe überlege ich wirklich demnächst mich ein bisschen in php einzuarbeiten.

Deine Idee mit der single page application ist in meinem fall wirklich nicht schlecht. Nur leidet darunter die Übersichtlichkeit ein wenig.

© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4