Wie um zu Zeigen, Ein <div> wenn Javascript Aktiviert ist und ein Anderes <div> wenn Es das Nicht?

Bin ich mit etwas Javascript für die Anzeige einer "Foto-rotator fade" in einem <div>. Wenn JS nicht aktiviert ist, aber ich habe eine animierte gif-Datei, die ich anzeigen möchten, statt. Ich habe eigentlich, es funktioniert mit diesem code:

<div id="slideshow" class="show pics float-left">
    <img src="images/banner-photos/new-01.png" width="343" height="228" alt="photo" />
    <img src="images/banner-photos/new-02.png" width="343" height="228" alt="photo" />
    <img src="images/banner-photos/new-03.png" width="343" height="228" alt="photo" />
</div>

<noscript>
    <link href="css/hide-slideshow.css" rel="stylesheet" type="text/css" />
    <p class="adjust"><img src="images/banner-photos/animation.gif" alt="slideshow" /></p>
</noscript>

Externe JS Dateien, die Ihre Magie auf die <div>. Die Klassen, die auf id="slideshow" - Abmessungen, padding, margin, Positionierung, etc. Die "ausblenden" -slideshow" - css-Datei hat ein "display:none" im #slideshow und auf "anpassen" - Klasse um die animierte gif-Datei hat einige schieben und ziehen, um es zu bekommen, wo Sie benötigt werden (das ist, wo die slideshow würde, wenn es nicht ausgeblendet).

Habe ich getestet, im FF3, IE7, IE8, Chrome und Safari (Win). Die gute Nachricht ist, dass es funktioniert wie ein Charme. Die schlechte Nachricht ist, dass es nicht pass der W3C-validator. Ich erhalte eine Fehlermeldung, die sagt, "Dokumenten-Typ nicht erlauben, element "link" hier".

Obwohl meine Methode funktioniert, ist es auch kludgey? Gibt es eine bessere Möglichkeit zu zeigen, dass man <div> wenn JS aktiviert ist und eine andere <div> wenn es nicht ist, in einer Weise, die funktioniert cross-browser und übergibt die Validierung?

Dank!

InformationsquelleAutor | 2009-06-08

Schreibe einen Kommentar