Java Reference
In-Depth Information
4.5■Kann man testen, ob bei einem Browser
JavaScript aktiviert ist?
JavaScript wird in allen relevanten modernen Webclients unterstützt. Aktuelle Statistiken
gehen davon aus, dass etwa 99,1 % bis 99,9 % der Anwender JavaScript aktiviert haben.
Dennoch sind Sie bei manchen Projekten nicht in der Lage, Besucher ohne JavaScript zu
ignorieren. In diesem Fall sollte das Projekt ohne die Unterstützung von JavaScript nicht
vollkommen unbrauchbar sein. Entweder geben Sie dem Anwender einen Hinweis, dass
eine Seite nur dann funktioniert, wenn JavaScript aktiviert ist. Oder aber Sie testen die
Verfügbarkeit und entscheiden dann, JavaScript-Verweigerer umzuleiten. Ein kurzer Test
auf die Unterstützung von JavaScript ist einfach. Dieser Test kann entweder ein einziges
Mal beim Einstieg in ein Webprojekt ausgeführt werden oder auch bei jedem Laden jeder
Webseite Ihres Projekts, die mit JavaScript arbeitet. Die explizite Abfrage bei jedem Laden
einer neuen Webseite beugt dem Anwenderverhalten vor, dass während eines Besuchs auf
Ihrem Webprojekt vom Anwender die JavaScript-Unterstützung erst deaktiviert wird und
der Test auf der Einstiegsseite JavaScript als aktiviert gekennzeichnet hatte. Wenn Sie das
nicht tolerieren können, können Sie zumindest beim Seitenwechsel gegensteuern. Wie kön-
nen Sie nun testen, ob bei einem Client JavaScripts überhaupt ausgeführt werden können
oder nicht? Mit JavaScript selbst? Eine Abfrage per JavaScript, ob JavaScript aktiviert ist, ist
ja nicht möglich, wenn es deaktiviert ist. Oder doch? Es geht wirklich, indirekt. Man nutzt
explizit die Tatsache, dass eine JavaScript-Aktion bei deaktiviertem JavaScript überhaupt
nicht funktioniert.
4.5.1■Eine Browserweiche
Das geht beispielsweise so. Mit JavaScript führen Sie eine Weiterleitung zu einem anderen
URL aus. Funktioniert der, muss auch JavaScript aktiviert sein. Wenn Sie den Anwender
nun komfortabel führen wollen, erstellen Sie eine Einstiegsseite in Ihr Webprojekt, die im
Wesentlichen eine solche Weiterleitung enthält und ihn für den Fall von deaktiviertem
JavaScript automatisch zu einem Projekt führt, das ohne JavaScript auskommt.
Eine solche Weiterleitung funktioniert auch ohne JavaScript. Mit HTML sind automatische
Weiterleitungen mit dem Tag <meta http-equiv="refresh" content="[Zeit];URL=[Ziel]">
möglich. Beim Attribut content geben Sie zuerst die Zeitspanne an, nach der die Weiterlei-
tung erfolgen soll, und dann das Ziel der Weiterleitung. Der entscheidende Trick beruht nur
darauf, die Weiterleitung per HTML erst nach der Weiterleitung per JavaScript auszuführen.
Das nachfolgende Beispiel zeigt so eine automatische Trennung nach JavaScript und deak-
tiviertem JavaScript. Beispiel (kap4_1.html) :
Listing 4.6■ Trennung nach JavaScript-Unterstützung oder nicht
...
<meta http-equiv="refresh" content="2;URL=http://blog.rjs.de/">
<title>Trennen nach JavaScript</title>
<script type="text/javascript">
location.href = "http://rjs.de/";
 
Search WWH ::




Custom Search