- Dynamisches HTML
-
DHTML, Dynamic HTML, dynamisches HTML oder neuerdings auch DOM-Scripting sind beim Webdesign verwendete Begriffe, mit denen Websites bezeichnet werden, die gegenüber normalen, statischen Seiten erweiterte Funktionalität oder Anzeigeeffekte aufweisen. Während eine normale HTML-Seite nach dem Abruf statisch und unveränderlich ist (von Hover-Effekten mit CSS abgesehen), können Seiten mit dynamischem HTML weitere Funktionalität bieten, etwa Teile der Seite verändern oder animieren.
Dynamisches HTML wird mittels der folgenden Techniken realisiert:
- HTML zum Verfassen von Dokumenten
- eine clientseitige Skriptsprache, meistens JavaScript
- eine Schnittstelle zur Änderung und Erweiterung des HTML-Dokuments, heute wird vor allem das Document Object Model (DOM) verwendet
Damit ist es möglich, Webseiten zu schreiben, deren Inhalte sich während der Darstellung im Browser „dynamisch“ ändern, insbesondere in Reaktion auf die Eingabe. Das kann zum Beispiel bedeuten, dass ein Menü aufklappt, Texte hervorgehoben oder eingeblendet werden, Objekte sich per Drag & Drop bewegen lassen oder ein Formular automatisch Berechnungen durchführt.
Durch diese Interaktivität ist es möglich, Webseiten zu schreiben, die sich wie normale Anwendungsprogramme bedienen lassen. Dabei werden meist die Fähigkeiten moderner Browser genutzt, die mit dem XMLHttpRequest Daten zwischen Client und Server austauschen (siehe auch Ajax). Als allgemeines Format zur Übertragung strukturierter Daten dient zumeist XML oder auch JSON (siehe auch Web Service, XML-RPC).
Kritik und Nachteile
Insbesondere in der Anfangszeit wurde dynamisches HTML häufig für effekt-orientierte Funktionen verwendet, die von manchen Nutzern auch als störend empfunden werden. Darüber hinaus konnte es damals nur über Browser-spezifische sogenannte DHTML-Modelle realisiert werden, die nicht zueinander kompatibel waren. Dieser Ruf hängt dynamischem HTML bis heute an. Daher wird heute auch der Begriff DOM Scripting verwendet, mit dem man standardkonformes DHTML von Browser-spezifischen Varianten abgrenzen möchte.
Dynamisches HTML stellt teils hohe Anforderungen an die Javascript-Fähigkeiten des Browser, die dann nur von der neuesten Browsergeneration erfüllt werden. Benutzer anderer Browser oder solche, die Javascript (etwa aus Sicherheitsbedenken) deaktiviert haben, können dynamisches HTML also nicht verwenden. Darüber hinaus kann sich die Zugänglichkeit für Anwender verschlechtern, die wegen körperlichen Behinderungen auf alternative Eingabe- bzw. Ausgabemethoden zurückgreifen müssen (siehe Barrierefreies Internet). Es ist aber möglich, dynamisches HTML so zu verwenden, dass es nur bei Browsern verwendet wird, die damit auch umgehen können. Die übrigen Anwender können die Website dann verwenden, als ob diese gar kein dynamisches HTML einsetzen würde. Auch Suchmaschinen können dynamisches HTML nicht verwenden und bei falscher Anwendung nicht mehr alle Inhalte der Seite auffinden.
Siehe auch
Weblinks
Wikimedia Foundation.