window.open (Problem mit Höhe und Breite des neuen Fensters)
Holgi
- javascript
Hallo Kollegen,
ich übergebe aus dem <Body> die Größen Bild Hoehe und Breite an die Funktion Grafikfenster. Mit document.write zeige ich, daß die Übergabe funktioniert hat. Das Fenster nimmt aber nicht die Größe 100x100 an. Skript steht unten.
Wenn ich die Werte für Höhe und Breite direkt eintrage (window.open("about:blank","Grafik","width=100,height=100");) funzt alles tadellos.
Was mache ich falsch?
Danke für Eure Hilfe
Holgi
<html>
<head>
<script type="text/javascript">
<!--
function Grafikfenster(Bild,Hoehe,Breite) {
popup = window.open("about:blank","Grafik","width=Breite,height=Hoehe");
popup.document.open();
popup.document.write(Bild + Hoehe + Breite)
popup.document.close();
}
//-->
</script>
</head>
<body>
<a href="javascript:Grafikfenster('../publish/content_tech/l_100km.gif',100,100)">
Ein Link
</a>
</body>
</html>
Hallo,
das hier austauschen:
popup.document.write(Bild + Hoehe + Breite)
mit
popup.document.write('<img src='+ Bild + 'height=' + Hoehe + 'width=' + Breite + '>');
Gruß riethmunk
Sorry hattze noch Leerzeichen vergessen
popup.document.write('<img src='+ Bild + ' height=' + Hoehe + ' width=' + Breite + '>');
Gruß riethmunk
Hi riethmunk,
da hast Du leider was falsch verstanden (oder ich schlecht beschrieben ;-) Mit write wollte ich nur zeigen, daß die Werte in den Script-Bereich übergeben wurden. Das Eigentlich Problem ist der window.open-Befehl. Dort werden die Maße für das Fenster ignoriert.
Sagt mir Bitte Bescheid, wenn die Problembescreibung unklar war.
Trotdem Danke
Holgi
Sorry hattze noch Leerzeichen vergessen
popup.document.write('<img src='+ Bild + ' height=' + Hoehe + ' width=' + Breite + '>');
Gruß riethmunk
Gut, dann probiers so:
popup = window.open('about:blank', 'Grafik', ' width=' + Breite + ' height=' + Hoehe);
Gruß riethmunk
Hier kümmer man sich ja wirklich um Greenhorns - Danke Dir!
Gut, dann probiers so:
popup = window.open('about:blank', 'Grafik', ' width=' + Breite + ' height=' + Hoehe);
Gruß riethmunk
Hi,
function Grafikfenster(Bild,Hoehe,Breite) {
popup = window.open("about:blank","Grafik","width=Breite,height=Hoehe");
"width=" + Breite + ",height="+ Hoehe
Du willst ja nicht den Text 'Breite' angeben, sondern den Wert, der in der Variable Breite drinsteht.
Variablen werden in Strings nicht erkannt. Wie auch?
Andreas
Yihaa (schäm), danke Andreas, das War's! Ich geb's ja zu:Anfängerfehler ;-)
Hi,
function Grafikfenster(Bild,Hoehe,Breite) {
popup = window.open("about:blank","Grafik","width=Breite,height=Hoehe");
"width=" + Breite + ",height="+ Hoehe
Du willst ja nicht den Text 'Breite' angeben, sondern den Wert, der in der Variable Breite drinsteht.
Variablen werden in Strings nicht erkannt. Wie auch?
Andreas
Hallo, Holgi,
Was mache ich falsch?
Dein ganzes Konzept ist undurchdacht. Es ist dreifach problematisch. Zum Ersten verwendest du Popups, welche hier vielleicht angemessen scheinen, jedoch einige grundsätzliche Benutzbarkeitsprobleme aufwerfen. Zum Zweiten verwendest du JavaScript-Popups in einer Art, welchen es Benutzern, welche JavaScript deaktiviert haben, unmöglich macht, deine Seite problemlos zu betrachten; selbiges gilt für Suchmaschinen und Menschen mit Behinderungen. Dadurch benachteiligst du einen großen Teil deiner Besucher und schließt sie bewusst aus. Zum Dritten rufst du das Fenster mit der Destination 'about:blank' auf und schreibst erst dann das Bild in das Fenster. Dies ist gleich zweifach problematisch: Wenn du nur ein Bild (img-Element) und keine komplette HTML-Datei im Fenster erzeugst, ist nicht gewährleistet, dass jeder Benutzer die Grafik problemlos sehen kann (Ränder nicht festgelegt, Fenstergröße aber zementiert). Zum Zweiten wäre es viel naheliegender, einfach direkt das Fenster mit der URI der Grafik zu öffnen, wodurch sich auch viel einfacher eine Lösung ohne JavaScript erarbeiten lassen würde. Wenn man auf eine HTML-Datei im Popup-Fenster besteht, sollte man diese serverseitig dynamisch generieren lassen.
Probleme und Workarounds bezüglich JavaScript-Popups sind auf der Seite http://home.t-online.de/home/dj5nu/js-popup.html erläutert. Ich rate dir dringend, dich mit damit vertraut zu machen.
Dein Problem ist zudem prädestiniert, dass man es per PHP (Perl, Python, ...) löst. Ich habe eine beispielhafte Lösung schon mehrmals gepostet, beispielsweise im Thread http://forum.de.selfhtml.org/archiv/2002/9/23627/#m130831. Das erläutere ich dir auch gerne noch einmal.
Alle hier im Thread schreibenden Helfer sollten bitte zuerst http://forum.de.selfhtml.org/archiv/2002/9/23627/#m130831 zur Kenntnis nehmen, bevor sie in Zukunft Fragen bezüglich Popups beantworten. Danke.
Viele Grüße,
Mathias