Helmut Rohrbeck: Neue Seite mit relativer Position zur vorhandenen öffnen

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");  
}  
  

  1. 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.

    1. 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!