Martin Hölter: opener.location ist kein Objekt

Hallo Forum!

Ich bastel gerade für den bestehenden Auftritt unserer Sparkasse http://www.sparkasse-iserlohn.de eine Unterseite für das Vermögensmanagement. Diese soll in einem neuen Fenster geöffnet werden. Da hierdrin aber auch Links auf den "normalen" Auftritt enthalten sind, wäre es m.E. schön, wenn sich diese dann in dem Fenster öffnen würden, die die Unterseite aufgerufen hat. Hierfür hab ich folgendes geschrieben:

<script language = "JavaScript"><!--
function klick(url){
if (opener.location){
opener.location.href=url;
window.blur();
}
else
{window.open(url, 'newwin', 'location=yes,menubar=yes,toolbar=yes,status=yes,resizable=yes,scrollbars=yes');}}
//-->
</script>

Es soll zuerst geprüft werden, ob die Seite geöffnet ist, die die Unterseite geöffnet hat. Wenn ja, soll in diesem Fenster der entsprechende Link geöffnet werden, ansonsten soll ein neues Fenster geöffnet werden. Allerdings bekomme ich die schöne Fehlermeldung "opener.location ist kein Objekt". Wo liegt mein Fehler?

Danke für eure Antworten!

Gruß,

Martin Hölter

  1. Hi,

    Ich bastel gerade für den bestehenden Auftritt unserer Sparkasse http://www.sparkasse-iserlohn.de eine Unterseite für das Vermögensmanagement. Diese soll in einem neuen Fenster geöffnet werden.

    sag den Verantwortlichen, dass dies ein Ausbund an Kundenunfreundlichkeit ist. Neue Fenster sind pfui bäh bäh.

    <script language = "JavaScript"><!--

    ERROR: Required attribute "type" missing.

    if (opener.location){

    Was ist opener? Wie lautet dessen closed-Eigenschaft?

    Allerdings bekomme ich die schöne Fehlermeldung "opener.location ist kein Objekt". Wo liegt mein Fehler?

    a) Im Konzept und
    b) darin, dass Du keine Debug-Ausgaben durchgeführt hast. alert() ist Dein Freund.

    Cheatah

    --
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hi,

      Ich bastel gerade für den bestehenden Auftritt unserer Sparkasse http://www.sparkasse-iserlohn.de eine Unterseite für das Vermögensmanagement. Diese soll in einem neuen Fenster geöffnet werden.

      sag den Verantwortlichen, dass dies ein Ausbund an Kundenunfreundlichkeit ist. Neue Fenster sind pfui bäh bäh.

      Ich hab bis jetzt noch keine Seite einer Bank gesehen, die kundenfreundlich waren. Es ist üblich den User  wegen Onlinebanking zu zwingen, dass er seine Sicherheitseinstellungen verschlechtert. Es gibt kaum Seiten die ohne JS nutzbar sind.

      Struppi.

      (wobei die oben genannte bei ersten Betrachten halbwegs zu funktionieren scheint)

      1. Ich wollte keine Diskussion darüber auslösen, ob neue Fenster toll sind oder nicht. Mich nerven sie ja meistens selber. Allerdings scheint mir das für die Art der Anzeige, wie ich sie haben will, am sinnvollsten, da das Vermögensmanagement nicht in dem roten Design, sondern in einem blauen erscheinen soll (ist mir selbst schleierhaft, warum, aber die wollen das so haben.) Und da ich eben auch auf Inhalte aus dem "Hauptauftritt" verlinken will, ist ein neues Fenster, welches das öffnende Fenster steuert,m.E. am sinnvollsten. Und funktionieren tun die Seiten größtenteils auch ohne JS, allerdings nicht ohne Frames :-( Das würd ich gerne ändern, allerdings bin ich gezwungen, den s.g. S-Web-Designer zu nutzen, mit dem ich noch nichtmal Zugriff aufs Body-Tag habe, geschweige denn, etwas am frameset zu verändern...

        Gruß,

        Martin

  2. Hi,

    if (opener.location){

    if(opener && !opener.closed && opener.neufenster) // neufenster = popuphandler

    Einige IE-Versionen haben massive Probleme mit closed. Da kann man nur ueber Error-abfangen (innerhalb d. Funktion) gehen:

    onerror = function(){
        alert("Leider haben Sie das andere Browserfenster schon geschlossen");
        return true;
    }

    Gruesse  Joachim

    1. if (opener.location){
      if(opener && !opener.closed && opener.neufenster) // neufenster = popuphandler

      Die ersten beiden Bedingungen verstehe ich ja. Wenn es ein Fenster gibt, das das Fenster geöffnet hat und dieses Fenster nicht geschlossen wurde. Aber was soll die dritte Bedingung?

      Gruß,

      Martin Hölter