Nach window.open werden Links nicht mehr im Standard-Frame geöffnet
Jens Niemeyer
- javascript
Ich bin ziemlicher JavaScript-Neuling und hoffe, hier keine überflüssige Frage zu stellen.
Zum Problem: Habe eine Funktion geschrieben, die nach Klick auf eine Vorschaugrafik die "richtige" Grafik in einem Extra-Fenster anzeigt.
Das ganze läuft im "Content-Frame" meines Framesets (Navigationsframe,Content-Frame).
Nachdem die Vorschau-Funktion (per <a><img ... OnClick> - gibt es da vielleicht was eleganteres, was auch mit den Navigator funktioniert?) einmal aufgerufen wurde, öffnen Standard-Links im Navigationsframe neue Fenster, anstatt - wie sonst - die Seite ins Content-Frame zu laden.
Eine Navigationsleiste im Navigationsframe, die an die SelfHTML-Quickbar angelehnt ist, öffnet andere Seiten nachwievor im Content-Frame.
Wie kommt das? Und was kann ich dagegen tun? Irgendwas muss ich doch falsch machen. Ich weiß nur leider nicht, was.
Vielen Dank für Eure Hilfe.
Hallo Jens,
Das ganze läuft im "Content-Frame" meines Framesets (Navigationsframe,Content-Frame).
Nachdem die Vorschau-Funktion (per <a><img ... OnClick> - gibt es da vielleicht was eleganteres, was auch mit den Navigator funktioniert?) einmal aufgerufen wurde, öffnen Standard-Links im Navigationsframe neue Fenster, anstatt - wie sonst - die Seite ins Content-Frame zu laden.
Bitte unbedingt eine Beispieldatei mit dem Problem online stellen.
Lese dazu auch die Aussagen in der FAQ http://www.teamone.de/selfaktuell/forum/forumsfaq_2.htm#a5
Viele Grüße
Antje
hi,
Nachdem die Vorschau-Funktion (per <a><img ... OnClick> - gibt es da vielleicht was eleganteres, was auch mit den Navigator funktioniert?)
NC erlaubt onclick nicht im IMG-tag, Du musst wie folgt ein a-tag drumbauen:
<a href="#" onclick="Deine_Funktion();return false;"><IMG SRC="..."></a>
einmal aufgerufen wurde, öffnen Standard-Links im Navigationsframe neue Fenster, anstatt - wie sonst - die Seite ins Content-Frame zu laden.
da kann ich nur raten, Du musst URL oder Auszug posten. Wahrscheinlich ist Dein code fehlerhaft, und veraendert den Framenamen.
Probier mal folgende Funktion, die Du so aufrufst:
onclick="fenster('Deine_URL.htm','','width=Deine_Breite,height=Deine_Hoeehe')
neu=false;
function fenster (adresse,name,eigenschaften)
{
if(neu && !neu.closed)
{
neu.close();
neu=false;
}
neu=window.open(adresse,name,eigenschaften);
}
Es wird also immer das Vorhandensein von "neu" geprueft, und, falls ja geschlossen. Danach wird neu mit den aktuellen Attributen geoeffnet.
Viel Erfog Joachim
NC erlaubt onclick nicht im IMG-tag, Du musst wie folgt ein a-tag drumbauen:
<a href="#" onclick="Deine_Funktion();return false;"><IMG SRC="..."></a>
Das habe ich schon probiert. Aber da ging wurde wieder der Seitenanfang gezeigt, was nicht in meinem Sinne ist.
Unter www.jens2day.de/problem wird das Problem deutlich.
Vielen Dank für Eure Hilfe!
Jens
Hallo Jens,
Unter www.jens2day.de/problem wird das Problem deutlich.
Vielen Dank für Eure Hilfe!
gib dem Link mal einen target oder referenziere absolut.
<a href="demo.htm" target="Hauptframe">Demo-Link</a>
für deine Zwecke wäre aber sicher das Script von Thumb-o-Matic: Christian Heilmann interessant. Zu finden auf:
http://www.internetworld.de/iw/magazin_listings_0200.htm
Viele Grüße
Antje
Hallo Jens
Unter www.jens2day.de/problem wird das Problem deutlich.
In Deinem Hauptframe-Doc steht in der preview()-Funktion
die Zeile
self.name = "Vorschau";
Damit aenderst Du den Namen dieses Frames von
"Hauptframe" zu "Vorschau". Anschliessend wird der Frame
"Hauptframe" nicht mehr gefunden, und es passiert das,
was immer passiert, wenn man einen noch nicht benutzten
Fensternamen als TARGET benutzt: Es wird ein neues Fenster
mit eben diesem Namen geoeffnet.
Bye, Calocybe
Danke Dir vielmals, das war's.