Tobias Stening: Firefox macht Probleme mit history.back() in iFrame

Beitrag lesen

Hallo,

ich habe ein etwas verzwicktes Problem. Ich muss eine Seite in einem iFrame anzeigen. Klicke ich dort auf einen Link, wird die Zielseite erstmal auch in dem iFrame geladen. Da ich das verhindern will und leider keinen Zugriff auf den Link habe, um diesem ein target="_blank" mitzugeben, habe ich in der Zielseite folgendes eingebaut:

if (top != self) {
  window.open(self.location, "_blank", "width=500,height=600,left=200,top=200,resizable=yes,scrollbars=yes");
  }
  history.back();
}

Die Zielseite wird also erstmal im iFrame angezeigt, lädt sich dann aber gleich selbst in einem externen Fenster und ruft dann history.back() auf, um im iFrame wieder die Ausgangseite anzuzeigen. Das funktioniert im IE auch ganz prima. Im Firefox habe ich aber nun das Problem, dass es beim ersten Mal funktioniert. Beim zweiten Mal bleibt die History stehen, d.h. weder per history.back() noch per Klick auf den Zurück-Button im Browser geschieht etwas. Erst nach einem kompletten Reload der Seite funtkioniert es wieder.

Hat jemand eine Idee, was ich da machen könnte? Oder handelt es sich um einen Bug im Firefox, den man nicht umgehen kann?

Habe auch schon

  • self.history.back();
  • history.go(-1);
    ausprobiert, leider genauso erfolglos.

Viele Grüße,
Tobias