André Laugks: open():fullscreen, Java wird gestartet, eval()

Beitrag lesen

Hallo alle zusammen!

Gestern Abend habe ich mir mal etwas den Kopf zerbrochen. Ich wollte Netscape dazu veranlassen, ein neues Fenster im Fullscreen zu öffnen. fullscreen=1 kennt Netscape ja nicht, also muß ich Ihm die Höhe und Breite des Bildschirmes irgendwie mitteilen. Nach langer rumprobirerei habe ich dies zusammen gefrickelt. Naja, eigentlich nicht so richtig, es gibt so kleine Problemchen.

Das erste ist, screen.availHeight und screen.availWidth. Das neue Fenster was geöffnet wird ist immer größer als der Monitor, so ca. 20 Pixel in der Höhe und Breite ausserhalb des Monitors, in Netscape und Internet Explorer. Kann doch nicht sein, da screen.availHeight und screen.availHeight doch den Anzeigebreich des Monitors berechnen. Was mich dann aber verwundert hat, das Netscape Java startet, was ich mir nicht so recht erklären kann http://www.netcologne.de/~nc-laugksan/forum/fenster1.htm. Im IE habe ich keine Sonderbarkeiten festgestellt. Wenn ich jetzt aber screen.availHeight und screen.availWidth z.B. je minus 30 Pixel nehme, startet Java nicht http://www.netcologne.de/~nc-laugksan/forum/fenster2.htm. Das neue Fenster befindet sich auch innerhalb des Anzeigebereiches des Monitors.
Für Netscape habe ich screenX=1 und screenY=1 gestetzt, sonst ist das Fenster noch mehr ausserhalb des Monitoranzeigebereiches. Für den IE habe ich jetzt noch nichts angegeben.

Hier mal das Script:
<html>
<head>

<script language="JavaScript">
<!--

var x = screen.availWidth;
var y = screen.availHeight;

function auf()
{
nFurl = "neuesfenster.htm";

nFname = "neuesFenster";

nFparameter = "width=" + x + ",height=" + y + ",screenX=1,screenY=1";

fenster = open(nFurl, nFname, nFparameter);
}

//-->
</script>

</head>

<body>

<a href="javascript:auf()">Fenster</a>

</body>
</html>

Ich habe versucht die Parameter fürs Fenster durch eval() zusammen zu stellen z.B. eval("width=" + 200). eval() verschluckt aber hierbei das width=, und zeigt nur 200 an. Ich habe das mit einem alert getestet. Ich bin mit meinem JavaScript-Latein am Ende. Jetzt addiere ich einfach alle Parameter in einer Variable zusammen, es funktioniert also auch ohne eval().

Da frage ich mich doch woran es liegt, Denkfehler oder an den Browsern?

mfg, André