Sprungmenüs müssen geräteunabhängig sein |
WAI / WCAG 1.0 Priorität 2 Checkpunkt 9.2
Problembeschreibung Die Seite enthält ein Sprungmenü (d. h. ein Menü mit mehreren Optionen, die jeweils auf eine eigene Seite verweisen), das mithilfe eines SELECT-Elements und einem ONCHANGE-Ereignisbehandler jeweils eine bestimmte Seite lädt. Dieses Verhalten verhindert, dass Besucher, die nur über Tastaturen verfügen, aus der Liste der angegebenen Optionen eine Option auswählen können.
Problemlösung Sprungmenüs können mithilfe von zwei Schritten geräteunabhängig gestaltet werden: Entfernen Sie das Attribut ONCHANGE aus dem SELECT-Element. Fügen Sie hinter dem Menü eine Schaltfläche ein (INPUT vom Typ BUTTON). Weisen Sie dieser Schaltfläche ein Attribut ONCLICK zu, das den Inhalt des zuvor entfernten ONCHANGE-Attributs enthält. Fügen Sie schließlich den gleichen Inhalt in das Attribut ONKEYPRESS ein. In Dreamweaver haben Sie beim Hinzufügen eines Sprungmenü-Objekts zu einer Seite die Möglichkeit, automatisch eine Schaltfläche hinter dem Menü einfügen zu lassen. Aktivieren Sie hierzu einfach das Kontrollkästchen 'Schaltfläche 'Gehe zu' hinter Menü einfügen'. Denken Sie daran, das Attribut ONCHANGE von SELECT zu entfernen und dafür der Schaltfläche ein ONKEYPRESS hinzuzufügen. Der folgende Code ist beispielsweise falsch:
    <form name="select_country">
    Select a country:
      <select name="country" onChange="MM_jumpMenu('parent',this,0)">
       <option value="http://www.this_site.com/be" selected>Belgium</option>
       <option value="http://www.this_site.com/us">United States</option>
      </select>
    </form>
Eine zugängliche Version könnte so aussehen:
    <form name="select_country" action="http://www.this_site.com/jump.cgi">
    Select a country:
      <select name="country">
       <option value="http://www.this_site.com/be" selected>Belgium</option>
       <option value="http://www.this_site.com/us">United States</option>
      </select>
     <input type="submit" value="Go">
    </form>
Problemerklärung Der JavaScript-Code des SELECT-Elements ermöglicht aber Benutzern, die nur über eine Tastatur verfügen, nicht die Auswahl einer der möglichen Optionen. Damit ist dieses Element nicht geräteunabhängig. JavaScript-Code ist nur dann geräteunabhängig, wenn folgende Bedingungen erfüllt sind: Die Benutzer können unter Verwendung von Ein- und Ausgabegeräten ihrer Wahl die Elemente einer Website bedienen. Eingabegeräte können Zeigegeräte, Tastaturen, Blindenschrift-Geräte, Mikrophone o. ä. sein. Bei Ausgabegeräten kann es sich um Monitore, Sprachgeneratoren, Blindenschrift-Geräte o. ä. hendeln. Allgemein gilt, dass Seiten, die eine Interaktion über eine Tastatureingabe ermöglichen, auch über sprachgesteuerte Eingabegeräte oder eine Befehlszeilen-Schnittstelle zugänglich sind. Beachten Sie hierbei bitte auch, dass Sprungmenüs nur dann funktionieren, wenn JavaScript aktiviert ist und im Browser des Benutzers zur Verfügung steht. Es gibt aber auch Browser, die JavaScript nicht unterstützen (z. B. Mobiltelefone und PDAs). Außerdem wird in manchen Unternehmen die Verwendung von JavaScript auch bei normalen Browsern aus Sicherheitsgründen deaktiviert. Fügen Sie ein NOSCRIPT-Tag ein, um entsprechende alternative Inhalte anzuzeigen und Interaktion zu ermöglichen (z. B. Hyperlinks und Formulare). Eine andere Möglichkeit besteht darin, serverseitige Skripts zu schreiben, welche die vom Menü übergebenen URLs verarbeiten und die entsprechende Seite anzeigen.