Hallo Rainer,
pb=window.open("popbild.php?bd="+bn+"","pb","height=600,width=800");
die Methode 'open' kennt bis zu drei Argumente - wenn ich Dein Konstrukt mit Browser-Logik betrachte, lautet das zweite Argument (der HTML-Target-Wert) "" und der dritte (die Darstellungsanweisungen) "pb" - das unerwartete VIERTE Argument "height=600,width=800" wuerde ich (als Browser) ignorieren :-)
Nein, friemel das Konstrukt doch einmal auseinander. Der Ausdruck ist richtig, aber ein Teil ist unnötig.
window.open(
"popbild.php?bd="+bn+"", /* erster Parameter */
"pb", /* zweiter Parameter */
"height=600,width=800" /* dritter Parameter */
)
Der erste Parameter ist ein Ausdruck, in welchem drei Strings aneinandergehängt werden, mit dem Operator »+«:
"popbild.php?bd=" + bn + ""
Der letzte String ist jedoch vernachlässigbar, da er leer ist, also lässt es sich auf folgendes kürzen:
"popbild.php?bd=" + bn
Dieser Ausdruck liefert natürlich einen zusammenhängenden String. Letztlich wird die Funktion bzw. Methode folglich mit drei Parametern des Types String gefüttert. Es ist somit dasselbe wie...
datei="popbild.php?bd="+bn;
pb=window.open(datei, "pb", "height=600,width=800");
...denn sofern der Ausdruck, welche die Variable datei bildet, als zweiter Parameter eingesetzt wird, sähe es so aus:
pb=window.open("popbild.php?bd="+bn, "pb", "height=600,width=800");
Dies wäre äquivalent, denn der Ausdruck wird zuerst berechnet, es ist dasselbe wie bei window.alert('bla'+variablenname+'bla') usw., nur dass eben dahinter noch weitere Parameter folgen, durch Kommas abgetrennt.
Grüße,
Mathias
»Das Usenet ist mittlerweile in Teilen unbenutzbar geworden, ein düsterer, mit Glasscherben und Hundescheiße übersäter Spielplatz für Kontroll- und Hassmaniker, deren Neurosen sich gegenseitig ergänzen.« (MH)