function fadeout()
{
var alt = 1;
if(document.getElementById("wrapper").style.opacity.localeCompare('0'))
{
alt = parseFloat(document.getElementById("wrapper").style.opacity);
neu = alt - 0.1;
console.log(neu);
document.getElementById("wrapper").style.opacity = neu;
window.setTimeout("fadeout()",1000);
}
}
Das Probme was ich habe ist das : document.getElementById(„wrapper“).style.opacity immer nur einen leeren string zurück giebt obwohl ich im css opacity definiert habe:
Der bisher nicht erwähnte Grund ist, dass per CSS-Klasse definierte Eigenschaften o.g. JavaScript-Kommando nicht zur Verfügung stehen. Hierbei handelt es sich um computed styles, wofür es auch extra JavaScript-Kommandos gibt. Siehe: https://developer.mozilla.org/en-US/docs/Web/API/Window.getComputedStyle
Beachte jedoch, dass diese wie schon angedeutet bei jedem Browser anders ermittelt werden müssen, wodurch für dich der Aufwand leicht steigt. Du hast daher folgende Lösungsmöglichkeiten:
a) Du setzt die Eigenschaft per Style-Attribut im HTML-Code. Dann steht sie auch dem von dir verwendeten Kommando zur Verfügung.
b) Du ermittelst wie von mir beschrieben den computed style.
c) Du nutzt jQuery oder andere Hilfsmittel, die dir den computed style zuverlässig ausgeben.
ok super klappt war ein dummer fehler hab ich einfach übersehen, ich möchte jetzt das das wrapper ausgefadet wird, wrapper hat nur ein hintergrundbild, aber das Menü soll weiter angezeigt werden. Geht das?