Schrift
[thread]2205[/thread]

JS PopUp resize Problem: Netscape, Opera, Firefox...



<< >> 2 Einträge, 1 Seite
cbxk1xg
 2004-05-29 05:05
#25720 #25720
User since
2003-10-20
496 Artikel
BenutzerIn
[default_avatar]
Hallo,
ich habe ein etwas merkwürdiges Problem mit Netscape, Opera, Firefox und Co.

Ich habe eine normale HTML-Datei mit ein bisschen JS:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<html>
<head>
<title>Bla bla...</title>
<script language="javascript">
function CloseUpOption(CUOpic)
{
window.open("http://foo.bar/js/CloseUp.shtml?" + CUOpic, "NewWindow", "scrollbars=0,toolbar=0,location=0,directories=0,status=0,resizable=0,width=290,height=180");
}
</script>
</head>
<body bgcolor="#FFFFFF" topmargin="0" leftmargin="0">
<a href="#" OnMouseOver="CloseUpOption('bild.jpg')">
</body>
</html>


Die Datei CloseUp.shtml sieht folgendermaßen aus:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<html>
<head>
<title>CloseUp</title>
<script language="javascript">function CloseMe() { close() }</script>
</head>
<body bgcolor="#FFFFFF" topmargin="0" leftmargin="0" OnLoad="self.focus()" OnBlur="CloseMe()">
<script language="javascript">
var pic = location.search;
pic = pic.substr(1);
document.write('<a href="javascript:CloseMe()"><img src="http://foo.bar/pics/' + pic + '" border=0 name="pic"></a>');
var x = document.images["pic"].width;
var y = document.images["pic"].height;
window.resizeTo(x+8,y+28);
</script>
</body>
</html>


Jetzt soll bei einem MouseOver Event die Datei CloseUp.shtml mit dem passenden Bild geöffnet werden und das Fenster soll automatisch auf die Größe des Bildes angepasst werden. Im IE ist das alles kein Problem. In den anderen Browsern theoretisch auch nicht. Aber...

Die Anpassung an die Fenstergröße funktioniert bei allen anderen Browser erst nachdem man ein zweites mal das MouseOver Event ausgelöst hat. Danach gibt es mit diesem Bild kein Problem mehr. Allerdings gilt das nicht für eventuell andere MousOver Events, die auf die gleiche Datei (CloseUp.shtml), aber mit anderen Bildern verweisen. Die Browser öffnen das PopUp auch nicht mit den angebenen Werten width=290,height=180 (sollte ein bugfix sein), sondern in dem kleinstmöglichen Fenster, das sie darstellen können. Ich vermute mal das ist etwa 50x50?!?

Ich habe auch schon mit setTimeout einen reload versucht, aber das endet entweder in einer Schleife oder lädt die Seite erst viel zu spät, oder viel zu früh und dann halt immer wieder...
esskar
 2004-05-29 05:51
#25721 #25721
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
hi.
versuch mal:

Code: (dl )
1
2
3
4
5
function CloseUpOption(CUOpic)
{
window.open("http://foo.bar/js/CloseUp.shtml?" + CUOpic, "NewWindow", "scrollbars=no,dependent=yes,width=290px,height=180px");
}
</script>
\n\n

<!--EDIT|esskar|1085795602-->
<< >> 2 Einträge, 1 Seite



View all threads created 2004-05-29 05:05.