offsetHeight bzw. clientHeight im Firefox

Jarvid

Grünschnabel
Also erstmal ein Hallo von mir an alle. Habe mich gerade erst regestriert und möchte jetzt schon mit der Tür ins Haus fallen :)

Ich habe ein mehr oder weniger kleines Problem mit im Betreff genannten Werten.
Code sieht folgendermaßen aus.
Code:
var ls= "<?php echo $mosConfig_live_site;?>";
var t1=((document.getElementById('hoeh').offsetHeight)%3);
document.getElementById('footer').setAttribute("style","background-image:url("+ls+"/templates/rhuk_solarflare_ii//images/footerbg"+t1+".gif);background-repeat:no-repeat");

Was soll das genannte machen? Das Element 'hoeh" enthält einen dynamisch hohen Content,der wiederrum einen Background enthält der sich je nach Höhe nach unten wiederholt. Dieser sich wiederholende Background ist 3px hoch. Die "letzte" Wiederholung dieser Backgroundgrafik wird aber nicht vollständig gemacht. Sondern nur soweit wie es der Content benötigt,warum auch immer.
Sprich es kann vorkommen,dass von dieser 3 px hohen Grafik am unteren Ende nur 2px gezeigt werden,also die unterste Pixelzeile wegfällt und so das Muster,welches das Element 'footer' fortsetzen soll nicht mehr ganz stimmt.
Also haben wir testweise 3 Backgroundgrafiken für den Footer gemacht,falls die letzte Wiederholung der contentbackgroundgrafik vollständige 3px Höhe hat,nur 2 oder nur 1px.
Über das Javascript soll jetzt entschieden werden welche angezeigt wird.

Jetzt sind wir endlich beim Problem:
Im Opera funktioniert das mit offsetHeight einwandfrei. Im Firefox oft,aber nicht immer? Soll heißen auf manchen Seiten stimmt der Wert nicht. Auf den wenigen Seiten auf denen es nicht geht,simmt der Wert nach neuladen der Seite seltsamerweise allerdings.
Gibt es da spezielle Gründe und auch Möglichkeiten das zu umgehen?

Und überhaupt zu der Problematik mit dem Hintergrundmuster gibts da vllt. viel einfachere Lösungen als mit einem Javascript?

---den Code innerhalb einer Funktion erst bei onload des Bodies durchzuführen hat gehlfen :)---

Bin für jeden Vorschlag offen :)
Danke
MfG
Jarvid
 
Zuletzt bearbeitet:
also...was das Skript macht:
es ermittelt den Restwert der Ganzzahldivsion durch 3, und lädt darauf ein Bild mit diesem Wert im Namen als Hintergrundgrafik.

Was man anstellen kann ohne JS: man verwendet Hintergrundmuster, bei denen die Grösse des Elementes, dass sie ausfüllen sollen, keine Rolle spielt.
 
Zurück