2 frames gleichzeitig und browser-back
Stefan
- javascript
Liebe Forumsgemeinde,
ich weiss, diese Frage ist schon hundertmal gestellt worden, und ich habe das Archiv auch schon durchsucht, aber wie man sein Javascript so schreibt, dass der Browser-Back button funktioniert, wenn ich "2 Frames gleichzeitig" (das war u. a. uebrigens mein Suchbegriff im Archiv) aendere, konnte ich leider nicht finden.
Hier sind die Ergebnisse meiner Recherche:
Platz 1 (mit 90%): "Findest Du im Archiv!" - Danke, sieht nach Endlosschleife aus ;-)
Platz 2: "Findest Du unter www.teamone.de/selfhtml/teda.htm#a1" - Nein, dort ist das leider nicht erklaert.
Platz 3: "Mit replace()" - Leider habe ich nicht verstanden, wie. Wenn ich statt "href" "replace()" verwende, komme ich gar nicht mehr auf meine aufrufende Seite zurueck, auch nicht mit 2 Mal Browser back klicken.
Platz 4: "Eigenen Back-Button programmieren." - Das ist einfach, aber ich will den Besuchern nicht die Moeglichkeit nehmen, mit Browser-Back zu browsen (weil das wohl die meisten machen).
Platz 5: "Die aufgerufene Seite muss die anderen Seiten nachladen" - Funktioniert nicht, auch hier ist mehrfaches Browser-Back klicken erforderlich.
Also nochmal: Gibt es eine Moeglichkeit, die History so zu beineflussen, dass der Browser-Back Button funktioniert? Bitte keine Beschimpfungen, falls es doch irgendwo im Archiv steht ;-)
Stefan
P.S. Bei meiner Recherche bin ich auf nen Kommentar (ich glaub von Cheatah) gestossen, wo er einen mit meiner Frage darauf hinwies, dass ja immer mehr User in ihrem Browser Javascript abschalten. Was soll das denn bedeuten, soll man ueberhaupt keine Scripte mehr schreiben? Ich glaube kaum, dass der Aufwand gerechtfertigt ist, seine Seite so zu programmieren, dass sie mit und ohne JS funktioniert. Eure Meinung wuerde mich interessieren.
Liebe Forumsgemeinde,
Amen ;-)
Hi Stefan,
ich weiss, diese Frage ist schon hundertmal gestellt worden,
... mindestens ;-)
und ich habe das Archiv auch schon durchsucht,
... echt ??? , selber schuld ;-)
ne, zurück zum Ernst. Es ist nicht leicht zu finden.
aber wie man sein Javascript so schreibt, dass der Browser-Back button funktioniert, wenn ich "2 Frames gleichzeitig" (das war u. a. uebrigens mein Suchbegriff im Archiv) aendere, konnte ich leider nicht finden.
... hat bei mir auch gedauert, bis der Groschen fiel (so etwa in Zehntel-Pfennigen).
Hier sind die Ergebnisse meiner Recherche:
Platz 1 (mit 90%): "Findest Du im Archiv!" - Danke, sieht nach Endlosschleife aus ;-)
... Nettes Publikum hier, stimmts ;-) Da kriegen Sie geholfen, aber Anschiss muss sein.
Platz 2: "Findest Du unter www.teamone.de/selfhtml/teda.htm#a1" - Nein, dort ist das leider nicht erklaert.
Platz 3: "Mit replace()" - Leider habe ich nicht verstanden, wie. Wenn ich statt "href" "replace()" verwende, komme ich gar nicht mehr auf meine aufrufende Seite zurueck, auch nicht mit 2 Mal Browser back klicken.
Platz 4: "Eigenen Back-Button programmieren." - Das ist einfach, aber ich will den Besuchern nicht die Moeglichkeit nehmen, mit Browser-Back zu browsen (weil das wohl die meisten machen).
Platz 5: "Die aufgerufene Seite muss die anderen Seiten nachladen" - Funktioniert nicht, auch hier ist mehrfaches Browser-Back klicken erforderlich.
Also nochmal: Gibt es eine Moeglichkeit, die History so zu beineflussen, dass der Browser-Back Button funktioniert? Bitte keine Beschimpfungen, falls es doch irgendwo im Archiv steht ;-)
Es geht. Und schimpfen überlass ich anderen, die können das besser ;-)
Ich habe es bei mir z.B. so gelöst:
Das entscheidende Frame, welches durch den Click auf den Link aufgerufen wird enthält die folgende Anweisungen im BODY und ruft damit sein eigenes Menü und bei mir noch gleichzeitig eine Kapitelüberschrift in einem weiteren Frame auf.
<body class=main onload="top.frame1.frame1b.location.replace('kopf-r-o.htm');top.frame1.frame1d.location.replace('kopf-r-u.htm');">
Das sollte überall funktionieren.
Gruß
@ndre@s
P.S. Bei meiner Recherche bin ich auf nen Kommentar (ich glaub von Cheatah) gestossen, wo er einen mit meiner Frage darauf hinwies, dass ja immer mehr User in ihrem Browser Javascript abschalten. Was soll das denn bedeuten, soll man ueberhaupt keine Scripte mehr schreiben? Ich glaube kaum, dass der Aufwand gerechtfertigt ist, seine Seite so zu programmieren, dass sie mit und ohne JS funktioniert. Eure Meinung wuerde mich interessieren.
Hallo @ndre@s,
Ich habe es bei mir z.B. so gelöst:
Das entscheidende Frame, welches durch den Click auf den Link aufgerufen wird enthält die folgende Anweisungen im BODY und ruft damit sein eigenes Menü und bei mir noch gleichzeitig eine Kapitelüberschrift in einem weiteren Frame auf.
<body class=main onload="top.frame1.frame1b.location.replace('kopf-r-o.htm');top.frame1.frame1d.location.replace('kopf-r-u.htm');">
Danke fuer die Hilfe, aber irgendwie funktioniert das bei mir nicht. Wenn ich im <body> der neuen Seite per JS eine weitere Seite aufrufe, dann gibt es doch auch einen History-Eintrag, wenn ich es mit location.href mache. Wenn ich replace() nutze, dann gibt es keinen, aber ich komme nicht zur vorhergehenden Ansicht zurueck, die mit replace() geaenderte Seite bleibt dann bestehen.
Was mache ich falsch?
Vielleicht kannst Du mir ja nochmal helfen.
Gruss,
Stefan
Hallo Stefan,
Du musst wahrscheinlich konsequent auf diese Variante umsteigen.
Schau die mal http://www.th-online.de an, (den Quelltext meine ich), dort habe ich ein mehrfach geschachteltes Frameset verwendet (daher auch die einfaltslosen framenamen ;-)
Jedes Hauptfenster (das große in der Mitte ;-) lädt sein eigenes Menü und seine eigene Überschrift selbst nach.
Und bis auf ein paar Kleinigkeiten gabs bisher keine Probleme mit dem Back-Button.
Und auf meiner eigenen Seite funktionierts auch (http://per-inter.net)
In der History werden dann nämlich nur die "Haupt"-seiten verfolgt. Alle "Neben"-Frames werden ignoriert und müssen durch die Hauptseite selbst nachgezogen werden. Und damit nix verquer geht, eben möglichst alle auf die selbe Weise.
Gruß
@ndre@s
Hallo @ndre@s
danke fuer die Tipps.
Mein Fehler war, dass die urspruengliche Seite bei mir nicht ihre Nebenframes nachgezogen hat, nur die durch den Link aufgerufene. Wenn man es konsequent auf allen Seiten mit replace() macht, dann klappt es super.
Danke und Gruss,
Stefan
Moin,
Platz 4: "Eigenen Back-Button programmieren." - Das ist einfach, aber ich will den Besuchern nicht die Moeglichkeit nehmen, mit Browser-Back zu browsen (weil das wohl die meisten machen).
dann darfst du nicht zwei Frames mit location.href aendern.
Platz 5: "Die aufgerufene Seite muss die anderen Seiten nachladen" - Funktioniert nicht, auch hier ist mehrfaches Browser-Back klicken erforderlich.
noe, nicht wirklich.
Also nochmal: Gibt es eine Moeglichkeit, die History so zu beineflussen, dass der Browser-Back Button funktioniert?
1.) lade ein komplettes Frameset nach
2.) aendere eine Seite mit JS (immer im selben Frame) und lass diese mit JS jeweils die anderen Seiten aendern. (Variante 5)
Bitte keine Beschimpfungen, falls es doch irgendwo im Archiv steht ;-)
die Beschimpfungen stehen doch alle schon im Archiv ;-))
[...] dass ja immer mehr User in ihrem Browser Javascript abschalten. Was soll das denn bedeuten, soll man ueberhaupt keine Scripte mehr schreiben? Ich glaube kaum, dass der Aufwand gerechtfertigt ist, seine Seite so zu programmieren, dass sie mit und ohne JS funktioniert. Eure Meinung wuerde mich interessieren.
Die Informationen einer Seite sollten jedem zugaenglich sein. Informationen haben mit Javascript nichts zu tun. Javascript ist Mehraufwand, stimmt - wenn du meinst, dass es sich lohnt - nur zu ;)
Viele Gruesse,
n.d.p.
Hi,
soll man ueberhaupt keine Scripte mehr schreiben?
Doch - wenn JavaScript dem gewünschten Effekt angemessen ist (in den
Augen der Benutzer, nicht in Deinen!), dann schon.
Ich glaube kaum, dass der Aufwand gerechtfertigt ist, seine Seite
so zu programmieren, dass sie mit und ohne JS funktioniert.
Eure Meinung wuerde mich interessieren.
Das kommt wie gesagt auf Deine Seite an.
Wenn der wesentliche Effekt dieser Seite ein dynamischer ist, der
Client-seitige Intelligenz *benötigt* und Du das dem Besucher auch
vermitteln kannst, dann ist JavaScript wahrscheinlich das Mittel
der Wahl.
Wenn Du eine Seite, die ohne JavaScript auch schon 90+% ihres Nutzwertes
liefern könnte, mit dem Einsatz von JavaScript so verunstaltest, daß
sie dies nicht tut, dann solltest Du darüber noch mal nachdenken.
Viele Grüße
Michael
(der in
{link:http://www.homepage.de/home/schroepl/pbm/partien/yield/_formular/formular.htm]
massiv JavaScript einsetzt, aber versucht hat, sich dabei auch etwas
gedacht zu haben
http://www.homepage.de/home/schroepl/pbm/partien/yield/_formular/handbuch.htm
und nicht nur ein bißchen zusätzliches Klicki-Bunti zu spendieren.)