Neue Seite mit relativer Position zur vorhandenen öffnen
Helmut Rohrbeck
- javascript
Ein JScript, welches in einer Webseite eine Neue Seite mit einer Position relativ zur vorhandenen Seite öffnet (im Beispiel 10 px nach rechts versetzt). Funktioniert im IE, Firefox öffnet immer im vorhandenen Fenster.
/* Öffnet eine neues Fenster um 10px nach rechts versetzt
über dem vorhandenen Fenster, wenn dessen Abstand von
rechts mindestens 10px beträgt. */
var v, w, x, y, z;
v = screen.availHeight;
w = screen.availWidth;
if(w >= 1024) {
x = 1024;
y = v;
z = (w - x)/2;
}
else {
x = w;
y = v;
z = 0;
}
if(window.opener == null) {
window.resizeTo(x, y); //Größe des 1.Fensters
window.moveTo(z, 0); //Position des 1.Fensters
}
window.focus();
function OpenWindow(Lnk,E) {
var E, d, x1, x2;
if(!E)
E = window.event; // Ereignis Mausklick auf den Link
x1 = E.screenX; // Bildschirm-Position des Klicks
x2 = E.clientX; // Position des Klicks im Fenster
d = 10 + x + x1 - x2; // Benötigter Platz für neues Fenster
if(w - d >= 10) { // Rechter Abstand des vorhandenen Fensters >= 10?
z = d - x; // Abstand des neuen Fensters links
}
window.open(Lnk,"_blank","top=0,left="+z+",width="+x+",height="+y+",location=yes,resizable=yes,scrollbars=yes");
}
Ein JScript, welches in einer Webseite eine Neue Seite mit einer Position relativ zur vorhandenen Seite öffnet (im Beispiel 10 px nach rechts versetzt). Funktioniert im IE, Firefox öffnet immer im vorhandenen Fenster.
Danke für die Information.
Ach du hattest eine Frage? Na dann stell sie auch. Du willst wahrscheinlich wissen, warum das nicht funktioniert und wie man es behebt. Warum das im Firefox nicht funktioniert: weil der Benutzer meist nicht will, dass sich ständig von selbst neue Fenster öffnen (in der Standardeinstellung ist das afair so).
Beheben kannst du das nicht. Was du tun kannst, sind Popups, wie sie z.B. mit Jquery(UI) angezeigt werden können, die aber keine eigenen Fenster darstellen.
Ein JScript, welches in einer Webseite eine Neue Seite mit einer Position relativ zur vorhandenen Seite öffnet (im Beispiel 10 px nach rechts versetzt). Funktioniert im IE, Firefox öffnet immer im vorhandenen Fenster.
Danke für die Information.
Ach du hattest eine Frage? Na dann stell sie auch. Du willst wahrscheinlich wissen, warum das nicht funktioniert und wie man es behebt.
Nein, das weiß ich, steht auch bei "window.open()" in SelfHTML:
|Sie müssen damit rechnen, dass window.open() in solchen Browsern lediglich
|eine neue Registerkarte öffnet - oder die Zielseite kurzerhand im selben
|Karteireiter angezeigt wird. In solchen Fällen sind Ihre Angaben zum
|Aussehen des neuen Fensters natürlich wirkungslos.
Und das ist nun mal so in Firefox 12.0!