Tag-Suppe entfernen - JavaScript Problem

Hallo Leutz,
ich wusste jetzt nicht so genau, in welches Forum ich das schreiben sollte.
Ich habe meine Webseite mit dem Qualidator geprüft und viele Fehler beseitigt. Bin jetzt bei 92,x% und ich dachte da geht noch was :wink:

Hier sind zwei Ausschnitte aus meinem Quelltext:

//js:
function ShowHideDiv(div) { 
	style = document.getElementById(div).style;
	if(style.display=="none"){ 
		style.display="block"; 
	}else{ 
		style.display="none"; 
	} 
}
//html
<div id="loading" style="display:none; position:absolute; top:0px;">
 <h1>Loading...</h1>
 <h2>Bitte warten!</h2>
</div>

Der Qualidator meint mit Recht, das ich die CSS Geschichte auslagern soll.
Wenn ich das mache, funktioniert die JavaScript Funktion nicht mehr…
„style.display“ gibts es ja dann nicht mehr…

Ich hoffe mir kann jemand helfen :wink:

Viele Grüße,
Marlin

Warum sollte es nicht mehr funktionieren? Mit Javascript kannst du doch auch Eigenschaften ansprechen, die in einer externen CSS-Datei gespeichert sind.

Oder bekommst du Fehlermeldungen?

function showHideDiv(div) { var div = document.getElementById(div); div.className = div.className == "hidden" ? "" : "hidden"; }

.hidden { display: none; }

Wenn du das CSS so auslagerst

#loading  { display:none; position:absolute; top:0px; }

muss es eigentlich funktionieren.

Ich bekomme keine Fehlermeldung aber wenn ich mit alert versuche den Wert auszugeben, wird nichts ausgegeben. Danke an crash, habs mit deiner Methode gelöst.

Viele Grüße,
Marlin

Hallo Marlin

Du könntest dies auch über eine CSS-Klasse lösen, die Du per JavaScript wechselst anstatt die Eigenschaften im JavaScript gleich direkt zu setzen.

Gruss

Markus