isabella: PopUp bei Verlinkung Mainwindow nachladen

Ich habe ein kleines Denkproblem.

Ich habe eine Internetseite index.htm (mit Frames), von denen Unterseite ein PopUp öffnet. Das funktioniert auch ganz prima.

Aber ich möchte verhindern, dass bei einer Verlinkung auf das PopUp (z.B. als Bookmark) nur das PopUp geladen wird. D.h. wenn das Bookmark (auf das PopUp) aktiviert wird, soll überprüft werden, ob index.htm offen ist. Wenn nicht, soll es geladen werden.

Das zweite Problem ist, dass ja in dem Fall das Fenster nicht in der festgelegten Größe (300x400) angezeigt wird, sondern in einer normalen Browserseite geladen wird. Wie kann das Fenster doch in der richtigen Größe geladen werden?

Sorry, unter Zeitdruck geht bei mir gar nichts mehr, und mir brennts derzeit unter den Nägeln.

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

Was ich schon versucht habe ist folgendes: Ich habe versucht den Namen der Index.htm rauszubekommen. Das bekomme ich mit document.title (in der index.htm) auch raus. Was ich aber bisher nicht hinbekommen habe, war, diesen herausgefundenen Titel auch über das PopUp abzufragen. Ich habe es über window.document.title versucht, aber entweder ist die Schreibweise falsch, oder er versucht es über das aktuelle Fenster abzufragen.

Hat jemand eine Idee?

  1. Wenn die Seite wie geplant in dem Popup angezeigt wird, hast du Zugriff auf das öffnende Fenster über das opener Objekt.

    Ralf

    1. Sie wird ja gerade nicht im Popup angezeigt! Wenn ich wüsste, wie ich die Abfrage im Popup gestalte (ob index.htm offen ist), dann hätte ich ja mein Problem nicht.

      Wenn die Seite wie geplant in dem Popup angezeigt wird, hast du Zugriff auf das öffnende Fenster über das opener Objekt.

      Ralf

      1. Hallo isabella

        Sie wird ja gerade nicht im Popup angezeigt! Wenn ich wüsste, wie ich die Abfrage im Popup gestalte (ob index.htm offen ist), dann hätte ich ja mein Problem nicht.

        Falscher Ansatz.
        Dich interessiert doch, ob der opener existiert.

        Auf Wiederlesen
        Detlef

        --
        - Wissen ist gut
        - Können ist besser
        - aber das Beste und Interessanteste ist der Weg dahin!
  2. Hallo isabella

    Ich habe eine Internetseite index.htm (mit Frames), von denen Unterseite ein PopUp öffnet. Das funktioniert auch ganz prima.

    Bei Seitenbesuchern, die kein Javascript haben funktioniert dies überhaupt
    nicht, und selbst bei aktiviertem Javascript nur, wenn es kein Popupblocker
    verhindert.

    Aber ich möchte verhindern, dass bei einer Verlinkung auf das PopUp (z.B. als Bookmark) nur das PopUp geladen wird. D.h. wenn das Bookmark (auf das PopUp) aktiviert wird, soll überprüft werden, ob index.htm offen ist. Wenn nicht, soll es geladen werden.

    Das kannst du nicht zuverlässig verhindern.

    Das zweite Problem ist, dass ja in dem Fall das Fenster nicht in der festgelegten Größe (300x400) angezeigt wird, sondern in einer normalen Browserseite geladen wird.

    Oh, das würde es bei mir in jedem Fall. Popups gibt es bei mir überhaupt
    nicht, jedes neue Fenster auch Popups landen bei mir in einem neuen Tab
    im selben Browserfenster, dessen Größe nur ich und keine Webseite verändern
    kann.

    Was ich schon versucht habe ist folgendes: Ich habe versucht den Namen der Index.htm rauszubekommen. Das bekomme ich mit document.title (in der index.htm) auch raus.

    Mit opener kommst du an das öffnende Fenster heran.
    (s. http://de.selfhtml.org/javascript/objekte/window.htm#allgemeines)

    Hat jemand eine Idee?

    Mache deine Seite nicht von einem Popup abhängig.

    Auf Wiederlesen
    Detlef

    --
    - Wissen ist gut
    - Können ist besser
    - aber das Beste und Interessanteste ist der Weg dahin!
  3. Nachdem mein Problem anscheinend niemand so recht versteht, oder es schafft, eine klare Antwort zu geben, eine neue klare Fragestellung:

    Wenn zwei Browserfenster geöffnet sind, die in ihnen enthaltenen .htm-Files Titel haben, wie kann ich den Titel des jeweils anderen Browserfensters abfragen. Vor allem, da offensichtlich nicht mit window[0] gearbeitet werden kann.

    1. Hallo isabella

      Wenn zwei Browserfenster geöffnet sind, die in ihnen enthaltenen .htm-Files Titel haben, wie kann ich den Titel des jeweils anderen Browserfensters abfragen.

      Ein Browserfenter weiß nichts vom anderen, es sei denn, diese gehören zu einem
      Frameset oder eines hat das andere als Popup geöffnet.

      Vor allem, da offensichtlich nicht mit window[0] gearbeitet werden kann.

      Was gefällt dir an opener nicht?

      Auf Wiederlesen
      Detlef

      --
      - Wissen ist gut
      - Können ist besser
      - aber das Beste und Interessanteste ist der Weg dahin!
    2. Hallo Isabella,

      Nachdem mein Problem anscheinend niemand so recht versteht, oder es schafft, eine klare Antwort zu geben, eine neue klare Fragestellung:

      ich habe Dein Problem wie folgt verstanden:

      Voraussetzungen:

      • Du hast eine Frameseite.
      • Eines der darin angezeigten Dokumente öffnet
          automatisch ein Popup-Fenster.
      • Es ist möglich, den Inhalt dieses Popup-Fensters zu bookmarken.

      Problem:

      • Jemand öffnet über das Lesezeichen das Dokument,
          das nur im Popup-Fenster angezeigt werden soll.
      • Nun benötigst Du das Frameset mit seinen Inhalten und
          das Dokument in seinem zugehörigen Popup-Fenster.

      Lösung: (falls vom Benutzer überhaupt zugelassen, siehe Detlefs Posting)

      • untersuche nach dem Laden des Dokumentes, das nur
          im Popup-Fenster angezeigt werden soll, ob window.opener
          existiert.
      • Wenn nein, dann wird das Dokument nicht in "seinem"
          Popup angezeigt.
      • Lade deswegen in das Browserfenster, in das Dein
          "Popup-Dokument" geladen wurde, Dein Frameset nach.
      • Dabei wird Dein Popup mit dem "Popup-Dokument" erzeugt.

      Beachte Detlefs Hinweise:
      Vom Benutzer nicht angeforderte Popups werden heute in immer
      mehr Fällen nicht angezeigt, z.B. Firefox und Internet Explorer
      unter Windows XP SP2 blockieren solche Popups in ihrer
      Standardkonfiguration. Von Popup-Blockern hast Du doch bestimmt
      auch schon gehört?

      Zu Deinen Versuchen, auf andere Browserinstanzen zuzugreifen und
      dort Daten auszulesen, zwei Linktipps: Same Origin Policy und Cross Site Scripting.

      Deinen Lösungsansatz habe ich überhaupt nicht verstanden. Warum willst Du die Titel anderer Browserfenster auslesen? Was möchtest Du damit erreichen?

      Freundliche Grüße

      Vinzenz

      1. Halleluja, des isses. Denkblokade aufgehoben. Vielen lieben Dank. Vor allem auch für die klare Antwort. Wer ne Denkblokade hat kann mit einem einfachen Satz meistens net viel anfangen. Das war die Rettung.

      2. Deinen Lösungsansatz habe ich überhaupt nicht verstanden. Warum willst Du die Titel anderer Browserfenster auslesen? Was möchtest Du damit erreichen?

        PS:
        Ich hatte als Denkansatz gehabt, dass wenn ich den Titel meier index.htm auslesen kann, ich im PopUp abfragen kann, ob der Titel in den geöffneten Browserfenstern existiert. Wenn ja, dann kein Nachladen von index.htm. Wenn nein, dann nachladen. Deswegen die Frage. Und wohl auch die Blokade.