Stefan Muenz: Funktion des Befehls win.focus in JavaScript?

Beitrag lesen

Hallo Timo,

Welche Bedeutung hat das if-Konstrukt mit dem win.focus? Was passiert wenn e4, n3 oder n4 vorliegen bzw. was passiert nicht...?
        function open_toplevelwin(){
                win = open('top_f_d.html', 'INNO', 'menubar=no,toolbar=no,width=640,height=520');
                if((ver=="e4") || (ver=="n3") || (ver=="n4")){
                        win.focus();
                }
        }

win ist der Name des Zweitfensters, das zuvor mit open() geoeffnet wird. Damit dieses neu erzeugte Fenster das aktive Fenster wird (Titelzeile ist hervorgehoben, Maus- und Tastaturbefehle sind Ereignisse dieses Fensters), kann man in JavaScript die Methode focus() benutzen. Diese Methode gibt es jedoch erst seit dem JavaScript-Sprachstandard 1.1. Der Programmierer des obigen Scripts fuehrt die Methode deshalb nur dann aus, wenn die Variable ver einen der Werte e4, n3 oder n4 hat (steht wohl fuer MS IE 4, Netscape 3 und Netscape 4 - die Variable ver muss zuvor mit einer Browser-Typenabfrage mit Hilfe des navigator-Objekts mit einem entsprechenden Inhalt versorgt worden sein). Durch das if-Konstrukt wird also verhindert, dass Browser, die die focus()-Methode nicht kennen, mit einer JavaScript-Fehlermeldung abbrechen.

Viele Gruesse
  Stefan Muenz