moin liebes Forum :)
ich bin auf ein sehr seltsames Problem gestoßen und ich weiss einfach nicht mehr weiter *verzweifel*
folgender (gekürzter) Code wird verwendet:
<html:html>
<head>
<script type="text/javascript">
function load(){
var gImage= document.getElementById('img2');
if (gImage != null) {
orgWidth = gImage.width;
orgHeight = gImage.height;
}
zoom();
}
<title>
<bean:message key="image.view"/>
</title>
</head>
<body onLoad="load();">
<html:img align="center" styleId="img2"src="<%= request.getContextPath() + \"/view?\" + request.getQueryString() %>" />
</body>
</html:html>
Was soll passieren? Die Grafik die über das Viewerservlet angezeigt wird, soll gezoomt werden (wat Überraschung...).
Mit dem Servlet ist soweit alles in Ordnung. Das gibt die Grafik ordentlich aus (in allen Browsern).
Nun möchte ich bei onLoad die Größe der angezeigten Grafik ermitteln. Hierfür spreche ich das Bild mit der ID an. In 99% der Fälle klappt das auch super. Es gibt nur _eine_ winzige Ausnahme (und die auch nur manchmal): Der Mozilla 1.2.1 für Mac (MacMoz wie ich ihn gern nenne) macht Ärger. In wenigen Ausnahmen, mag er die Größe nicht erkennen. Statt dessen gibt er einen Wert von 24 für die Breite (orgWidth) aus.
(Wenns wenigstens 42 wärn ... ;) *scnr*). Dieser Wert ist mir absolut schleierhaft!
Im Filesystem ist die Grafik 640px breit (so wie sie soll). Bevor das Zooming-Geraffel anfängt, wird die Grafik auch in der richtigen Größe angezeigt (also Breite 640px) - das habe ich mit einem Timeout getestet.
Ich habe bereits probiert um Abhilfe zu schaffen:
- ein einfaches reload: negativ
- ein erneutes Lesen der Größe: negativ (jaja *G*)
- einen Timeout von bis zu 10 Sekunden (das sollte ja wohl ausreichend sein um große Grafiken eventuell zu laden): negativ
- zooming wegzulassen: gab Ärger vom Chef ;)
Wieso kann dieser -PIEP-Browser die Größe der Grafik nicht ordentlich auslesen? Meines Wissens nach, beginnt eine onload-Methode doch erst wenn alles geladen wurde - oder?
Hat jemand vielleicht Erfahrung mit sowas? Ist es ein Bug (was eine tolle Argumentationshilfe gegenüber dem Kunden wäre, ein Update auf Mozilla 1.3 zu wagen)?
Mir würde auch ein work-around helfen. Bin verzweifelt. *schnief*
liebe Grüße aus Berlin
lina-
Self-Code: ie:% fl:( br:^ va:) ls:/ fo:| rl:( ss:) de:] js:| mo:)