Völlig neues Popup-Fenster
Ina
- javascript
0 Christoph Schnauß0 Ina
0 Tim Tepaße0 Ina0 Heiner0 Ina
0 Tim Tepaße0 Ina0 Tim Tepaße0 at
Hallo!
Gibt es eine Möglichkeit, dass bei Aufruf eines Popups (über Link) grundsätzlich ein völlig neues Fenster geöffnet wird? Ich habe das Problem (sowohl bei IE als auch bei Mozilla), dass wenn ich ein Popup aufrufe, der Inhalt u.U. in einem schon vorhandenen Popup-Fenster geöffnet wird (selbst wenn dieses viel zu klein ist).
Ich bräuchte so etwas 'target="_blank"' nur eben für Popups.
Bei Mozilla kommt noch hinzu, dass ich, wenn ich aus einem Popup heraus ein weiteres Popup aufrufen will, letzteres sich aber in ersterem öffnet und nicht in einem neuen Fenster (bei IE passiert dies allerdings nicht). Was kann ich da tun?
Vielen Dank schonmal
*Ina
hallo Ina,
Gibt es eine Möglichkeit, dass bei Aufruf eines Popups (über Link) grundsätzlich ein völlig neues Fenster geöffnet wird?
Normalerweise ja. Aber um das genau zu beantworten, müßtest du den entsprechenden Scriptcode, den du bisher verwendest, angeben, oder besser noch: du müßtest eine Adresse angeben, auf der man sich deine "Fehlkonstruktion" mal anschauen kann.
Dir ist aber das "Grundsatzproblem" bei popups bekannt? Seit sie überhaupt "erfunden" wurden, sind sie die "Spielwiese" für die Werbung geworden, und das wollen die Allerwenigsten sehen - ich auch nicht. Die modernen Browser bieten außerdem Möglichkeiten, popup-Fenster ganz zu disablen, ohne daß man gleich das ganze Javascript abschalten muß.
Sollte dir für deine Seite bzw. dein Webprojekt eine andere Gestaltungsweise, die ohne popups auskommt, einfallen, so nutze sie bitte.
Grüße aus Berlin
Christoph S.
Hallo!
Die 'Fehlkonstruktion' ist schon online:
http://www.inaeisenbeis.de
Und was Popups generell betrifft: Mir sind die Probleme durchaus bewusst und Werbe-Popups nerven mich genau wie dich. Aber die Möglichkeit, ein neues Fenster zu öffnen, dessen Größe ich genau bestimmen kann, kommt mir gestaltungstechnisch sehr entgegen.
Aber ich werde wohl doch von den Popups wegkommen müssen, da die Zukunft wohl dahin geht, dass ihnen immer mehr der Kampf angesagt wird. Nur dazu muss ich meine Website komplett neu konzeptionieren. Das braucht Zeit und bis dahin müssen die Popups eben noch funktionieren.
Jedenfalls, danke für deine Antwort
*Ina
Hallo Ina,
Ich habe das Problem (..), dass wenn ich ein Popup aufrufe, der Inhalt u.U.
in einem schon vorhandenen Popup-Fenster geöffnet wird (..).
und
Bei Mozilla kommt noch hinzu, dass ich, wenn ich aus einem Popup heraus ein
weiteres Popup aufrufen will, letzteres sich aber in ersterem öffnet (..)
Beides ist mir recht unbekannt. Kannst Du mal den Quelltext veröffentlichen,
wie Du das genau machst?
Hallo!
Ich habe 'das Problem' mal hochgeladen:
http://www.inaeisenbeis.de
Wenn z.B. ein Popup geöffnet ist, in dem eine Bildddatei angezeigt wird und ich dann auf den Link zu meinem Gästebuch klicke, wird eben dieses Gästebuch in dem schon vorhandenen Popup-Fenster geöffnet!
Die Sache mit Mozilla habe ich ja schon erläutert.
Hoffe, du kannst mir helfen
*Ina
Hallo,
Eine PopUp-Verweis sollte immer dieser Art gestaltet sein:
<a href="VERWEISZIEL" onclick="openLink(this.href); return false">VERWEISTEXT</a>
openLink sollte dann eine von Dir definierte Funktion sein, die ein Fenster öffnen lässt.
Heiner
Hallo!
Vielen Dank für die Antwort!
*Ina
Hallo Ina,
http://www.inaeisenbeis.de
Wah! Stress!
Erstmal mußte ich den Popup-Blocker in meinem Browser (Camino) ausschalten,
der eigentlich nur automatisch beim Laden der Seite aufgehende Popups
blockiert. Dann erstmal etwas auf der Seite rumfummeln, angucken, rumgucken,
irgendwie in den Quellcode gucken.
Nachdem ich das geschafft habe, mußte ich erstmal dieses wahnsinnig
komplizierte und überfrachtete Popup-Skript von diesem Ray Stott
verstehen. Und inzwischen habe ich eine Theorie, woran es liegen
könnte.
Uuuund zwar:
Ray (Ich nenne diesen komischen Vogel mal Ray) verleiht neu geöffneten
Fenstern einen Namen, wenn er diese mit der Methode window.open()
öffnet. Woher kriegt er diesen Namen? Er schreibt ihn in die Variable
winName und das mit diesem Befehl:
winName = "popWin" + winCount++
winCount ist auch eine Variable mit einer Zahl als Inhalt, die am Anfang des
Skriptes auf Null gesetzt wird und dann mit jedem Aufrufen eines Popups um
eins erhöht wird (++). Fensternamen lauten also in der Reihenfolge ihres
Erscheinens popWin1, popWin2, popWin3 und immerso weiter poppen. Soweit,
so gut.Nuur, jetzt kommt Dein Seitenkonzept ins Spiel.
Du hast nämlich mehrere Seiten, von denen Popups geöffnet werden.
Zuallererst die Startseite mit dem Fernglasblick. Dort wird das
Popup geöffnet, in das Du die Seite eingesperrt hast. Als zweites
die im Popup eingesperrte Seite mit den Menüpunkten. Dort wird nach
meinen Beobachtungen kein Popup geöffnet. Dafür hat diese Seite eine
weitere Seite als iFrame eingebunden.
Jetzt überlegen wir uns, was der Browser in Zusammenarbeit mit dem
Nutzer macht:
Die Fernglasseite wird geladen. Dort wird winCount auf Null gesetzt
und ein Popup mit dem wahrscheinlichen Namen "popWin1" geladen.
Die iFrame-Seite wird geladen. Dort ist wieder Ray bzw. sein Skript
eingebunden. In dieser Seite wird wieder winCount auf Null gesetzt.
Wenn nun von jeglicher iFrame-Seite mit Rays Skript versucht wird
ein Popup zu öffnen, dann wird wieder so ein Name wie "popWin1"
verwandt, der allerdingsschon benutzt wird.
Das Problem ist also folgendes:
Du öffnest zuviele Popups, eigentlich nichts verwerfliches (OK, doch),
aber Du tust das von zuvielen unterschiedlichen Seiten. Du öffnest die
Popups aber unter demselben Fensternamen und das ist das Casus Knacktus.
Wir Menschen können Maria und Maria auseinanderhalten, weil die eine
blond und kurzhaarig und die andere brünett und mit Piercing ist. Der
dumme Computer kann das nicht, er kann sich nur an den Namen halten und
das heißt, er braucht eindeutige Namen. Du bzw. Deine Seite bzw. Ray
bzw. Ray sein Skript öffnen nun Popups mit schon vergebenen Namen und
das Resultat ist, daß sich der Inhalt des zu öffnenden Popups innerhalb
eines schon geöffneten Popups öffnet. Logisch, nich?
Was kannst Du jetzt tun? Du mußt jedes Popup, das in einem eigenem
Fenster geöffnet werden soll, einen eigenen eindeutigen Namen geben.
Mit Rays Skript geht das recht schlecht, also setzt dieses Spinner
vor die Tür. Um Popups zu öffnen braucht man nicht so einen Stoffel,
das kann man alleine. Der Javascript-Befehl dafür nennt sich window.open();
und in SELFHTML steht, wie man den genau benutzt.
http://selfhtml.teamone.de/javascript/objekte/window.htm#open
Und wie man ihn am besten benutzt, bzw. am besucherfreundlichsten steht
in diesem etwas längeren Artikel (den ich heute schon zum dritten Male
verlinke. Schlimm.):
http://home.t-online.de/home/dj5nu/js-popup.html
Allerdings heißt das für Dich, daß Du jetzt jede Seite durchgehen solltest,
Rays Hinterlassenschaften ausmisten mußt und neue Popupöffner hinschreiben
mußt. Dafür hast Du die Gelegenheit für ein ausgedehntes Trockentraining
des Aktes der Kindtaufe, nämlich der (eindeutigen!) Namensgebung für jedes
einzelne Fenster. ;-)
Wenn ich Du wäre, wäre ich an dieser Stelle sauer, würde Popups und Ray
verfluchen wie nur was und meine Seite vollkommen auf nicht-Popup
umstellen. Das ist allerdings eine akademische Frage, da ich Popups
generell etwas kritisch gegenüber stehe und Seiten, die innerhalb eines
Popups gefangen sind meistens vollkommen ablehne. Das wäre mein eigentlicher
Vorschlag an Dich, mach was neues, erfinde ein neues Aussehen und vor allem
eine neue Bedienbarkeit. Sei kreativ. Aber es scheint leider nicht das zu
sein, was Du suchst. Schade. :-/
Grüße,
Tim
Hallo!
Wow, erstmal vielen Dank für deine Mühe und deine lange und ausführliche Antwort! Eigentlich ist das Problem ja ganz leicht zu verstehen, da hätte ich auch selbst drauf kommen können :-/
Jedenfalls, nach dem ganzen Stress, den du beschrieben hast, ist klar dass ich dieses Ray-Script loswerden muss. Vielen Dank für die Links (hey, gute Seiten kann man nicht oft genug verlinken ;) ), ich werde mich heute gleich mal dransetzen.
Sauer bin ich jetzt bestimmt nicht, was kann ich schließlich erwarten, wenn ich einfach ein Script aus dem Netz übernehme? Wie heißt es so schön: Aus Schaden wird man klug! :) Ich werde mal sehen, wie ich meine Seite umbauen kann, damit sie möglichst popup-arm funktioniert. Aber das dauert noch ein Weilchen (besonders bei dem Wetter ;) ).
Danke nochmal, du hast mir sehr geholfen!
*Ina
Hallo Ina,
Ich werde mal sehen, wie ich meine Seite umbauen kann, damit sie möglichst
popup-arm funktioniert.
beim «Reinspizieren« Deiner Homepage ist mir gerade aufgefallen, daß Du
jetzt mit »molilys Skript« zwei Popups gleichzeitig öffnest, eines mit
target="_black", das andere über den Event-Handler onClick. Jedenfalls
passiert das in meinem Browser. Etwas, daß Du nochmal überdenken solltest.
Aber das dauert noch ein Weilchen (besonders bei dem Wetter ;) ).
Ich gucke dann im Dezember weiter nach einer komplett Popup-freie Seite. ;-)
Hallo.
target="_black"
Für die depressiven Schwermetaller unter uns? ;-)
MfG, at