JS-Werbelayer macht Probleme

Hallo,

ich habe Probleme mit der Größen-Zuweisung an DIVs.
getestet in einem lokalen Projekt funktioniert alles, aber im realen Projekt klappt es nicht.

Die Bildschirmgröße wird ermittelt und wird abgeändert an zwei DIVs weitergegeben.

adDiv soll so groß sein, wie innerHeight/innerWidth.
adDiv2 soll mittig ausgerichtet angezeigt werden.

adDiv graut das Web aus und adDiv2 zeigt das Schliessen-Kreutz und den Werbe-Iframe.

Im IE und Opera funktioniert es, aber im FF und Safari können die Positionen und Größen nicht per JavaScript an die DIVs übergeben werden.

Getestet:
adDiv.width = windowWidth;
adDiv ist das Style-Objekt des DIVs.
windowWidth enthält den richtigen Wert.

Der Wert wird aber nicht zugeordnet - warum weiß ich nicht - in einem anderen Projekt funktioniert es, wie gesagt.

URL zum Testen: http://www.spelsberg.de/index.php?id=739

Wer hat da eine Idee? Ich sehe den Wald vor lauter Bäumen nicht. :frowning:

Hallo Döini,

adDiv.width = windowWidth;

adDiv.style.width = windowWidth;

Gruß
Klaus

Hallo Klaus,

danke für den Hinweis.

adDiv ist bereits das Style-Objekt.

Für den NS habe ich nun nachgebessert:
aus …
adDiv2=eval(‚document.layers[„layerDiv2“].style‘);
… habe ich …
adDiv2=eval(‚document.layers[„layerDiv2“].style‘);
… gemacht.

Leider geht es immer noch nicht. :frowning:(

Hallo Klaus,

adDiv2=eval(‚document.layers[„layerDiv2“].style‘);

was willst du mit eval bezwecken?

und warum nicht:

adDiv=document.getElementById(‚layerDiv2‘).style

für die abfrage des anzeigenbereiches bietet sich screen.availWidth und screen.availHeigth an.

für visibility gibt es hidden und visible

mittlerweile unterstützen alle browser diese object-referenzen.

wo hast du dieses alte script her? :smile:)

gruß
klaus

Hallo Klaus,

adDiv2=eval(‚document.layers[„layerDiv2“].style‘);

was willst du mit eval bezwecken?

Das stand im Script, das ich gefunden und umgeschrieben habe.

wo hast du dieses alte script her? :smile:)

Im Web gefunden. :smile:

Vielen Dank für deine Hilfe, ich werde es morgen mal ausprobieren.

Hallo Döini,

so als „Denkanstoß“:




window.onload=function(){
adDiv=document.getElementById(„layerDiv“).style
adDiv.visibility=„visible“
adDiv.left=100
adDiv.width = screen.availWidth-50
adDiv.top = 10
adDiv.height = screen.availHeight-200
}




durch die iframe-attribute: width=„100%“ height=„100%“
nimmt der iframe dann die komplette „fläche“ des div-containers ein.

Gruß
Klaus