obj.style.[egal] funktioniert in IE9 & FF4 nicht mehr =?
Devidian
- javascript
Grüße,
habe da ein kleines Problem bemerkt. Und zwar geht es darum das ich auf meiner Webseite eine JS Funktion selbst geschrieben habe, welche es ermöglicht Bilder in einer vergrößerten Version anzuzeigen.
// *schnipp*
resize : function()
{
var div = document.getElementById(this.imgDivID);
var back = document.getElementById(this.imgBgID);
var img = document.getElementById(this.imgTagID);
var nav = document.getElementById(this.imgNavID);
var resize = false;
img.style.height = "";
img.style.width = "";
var ix = img.offsetWidth;
var iy = img.offsetHeight;
var nx = ix;
var ny = iy;
var navx = nav.offsetWidth;
var dx = div.offsetWidth;
var dy = div.offsetHeight;
var mx = dx*0.9; // 10% padding
var my = dy*0.9;
if(mx<ix)
{
nx = mx;
ny = iy/(ix/mx);
ix = nx;
iy = ny;
resize = true;
}
if(my<iy)
{
nx = ix/(iy/my);
ny = my;
resize = true;
}
if(resize)
{
img.style.height = ny;
img.style.width = nx;
}
nav.style.left = (back.offsetWidth/2)-(navx/2);
back.style.marginTop = -1*(back.offsetHeight/2);
back.style.marginLeft = -1*(back.offsetWidth/2);
// ** schnipp*
Die geladenen Bilder werden zentriert im Browser dargestellt, und ggf. etwas verkleinert, so das sie immer ins Browserfenster passen (auch wenn man dies nachträglich verändert).
Ich teste meine Seiten immer in FF, IE und Opera (welchen ich selber hauptsächlich nutze) und die Funktion funktionierte mit FF3.6.9 und IE7/8 auch einwandfrei.
Jetzt bekam ich heute von jemandem eine Mail das diese wohl nicht mehr funktionieren würde. Nach meinen Überprüfungen stellte ich fest das die Funktion tatsächlich im IE9 und im FF4 nicht mehr funktioniert. Das Bild wird weder zentriert noch angepasst, weil die style werte einfach nicht gesetzt werden. Bekomme aber auch keine Fehlermeldungen von FireBug oder der IE Konsole. Habe auch schon probiert auf setProperty auszuweichen für FF, aber da passierte auch nichts. Im IE9 hilft es in den Kompatibilitätsmodus zu gehen, aber das kann ja nicht die Lösung sein.
Habe mich dann auch zu tode gegoogelt (fast) und nichts gefunden diesbezüglich. Hoffe mir kann hier jemand helfen.
Viele Grüße,
Devidian
Hi,
Ich teste meine Seiten immer in FF, IE und Opera (welchen ich selber hauptsächlich nutze) und die Funktion funktionierte mit FF3.6.9 und IE7/8 auch einwandfrei.
Das ist, zumindest was den FF angeht, verwunderlich - im IE wird vermutlich der Quirks Mode dran Schuld sein.
Habe mich dann auch zu tode gegoogelt (fast) und nichts gefunden diesbezüglich.
Statt dich zu Tode zu googlen, bräuchtest du einfach nur mal in der CSS-Spezifikation nachlesen, wie gültige Längenangaben bei Werten ungleich 0 auszusehen haben.
MfG ChrisB
Hi,
Ich teste meine Seiten immer in FF, IE und Opera (welchen ich selber hauptsächlich nutze) und die Funktion funktionierte mit FF3.6.9 und IE7/8 auch einwandfrei.
Das ist, zumindest was den FF angeht, verwunderlich - im IE wird vermutlich der Quirks Mode dran Schuld sein.
Habe mich dann auch zu tode gegoogelt (fast) und nichts gefunden diesbezüglich.
Statt dich zu Tode zu googlen, bräuchtest du einfach nur mal in der CSS-Spezifikation nachlesen, wie gültige Längenangaben bei Werten ungleich 0 auszusehen haben.
MfG ChrisB
-.- man danke. Ist ja schon fast peinlich dafür das ich das schon so lange mache. Naja gut, mit JS CSS manipulieren mache ich jetzt nicht so oft, aber bisher lief es wie gesagt auch so im IE/FF, daher ist mir das wohl entgangen.
War ja klar das das wieder so ein dämlich lächerlicher Fehler ist, welcher sich da eingeschlichen hat. ;)
Viele Grüße, und Danke nochmal...
Devidian