Användbarhetsboken berättar hur man gör webbplatser tillgängliga och användbara. Läs den här, eller beställ från Bokus eller Adlibris.

Använd inte javascript som förutsätter att användaren har mus

För att webbplatsen skall vara tillgänglig krävs att den kan användas utan mus, med enbart tangentbordet. Detta är speciellt viktigt för användare med funktionshinder, men också för dem som inte använder traditionella datorer för att surfa. En del användare arbetar också snabbare om de kan hålla sig till tangentbordet och slipper hoppa mellan det och musen.

För att göra sidan oberoende av mus måste de så kallade händelsehanterarna - som utlöses av olika händelser och sätter igång skript – väljas och hanteras med omsorg.

Om javascriptet har viktig funktion som inte finns tillgänglig på något annat sätt är detta råd ett Skall, annars är det ett Bör.

Här är några av de vanliga händelsehanterarna:

onload, onunload. Utlöses när man kommer till respektive lämnar sidan. Fungerar även utan mus.

onfocus, onblur. Utlöses när ett element på sidan får fokus respektive tappar det. Fungerar även utan mus. För visuella effekter är det dock ofta bättre att använda en formatmall med focus.

onchange. Används i formulär och utlöses när något ändras. Var försiktig med denna, den fungerar inte som man spontant kanske skulle tro tillsammans med valboxar, se Val­box­meny­er måste kunna användas utan mus, sid 141.

Enligt 24-timmarswebben bör den inte användas alls.

onclick. Utlöses när man klickar med musen, eller trycker på enter-tangenten (det senare är ett ostandardiserat beteende, men mig veterligen finns det inte någon webbläsare som inte har det).

I en del tillgänglighetsvägledningar rekommenderas att använda onkeypress tillsammans med onclick. Det är ett dåligt råd eftersom onclick i praktiken fungerar bra ensamt och onkeypress kan blockera andra tangentbordskommandon.

Observera att för att använda onclick från tangentbordet (vare sig den är i kombination med onkeypress eller inte) måste den vara knuten till något man kan välja med tabbtangenten, till exempel en länk, en knapp eller ett område i en multiklickbar bild.

I formulär måste man tänka på att enter-tangenten även sänder formuläret, så koden måste utformas så att avsedd sak händer. Likaså kräver kontroller där det finns flera alternativ, till exempel vallistor, radioknappar och kryssrutor, eftertanke i kodningen.

onmousedown och onkeydown . Använd dessa tillsammans, så att det inte blir någon skillnad mellan musen och tangentbordet. I många situationer fungerar onclick och onkeypress lika bra. Samma sak gäller för onmouseup och onkeyup .

onmouseover, onmouseout. Utlöses när pekaren förs in över respektive lämnar ett område.

Kan ofta ersättas av formatmallar med hover och focus. Används ibland i dekorativt syfte eller för att göra det tydligare vad som är klickbart och har då inga negativa effekter för tillgängligheten. Men låt dem inte ensamma förmedla något som användaren inte klarar sig utan.

För sådant som kan väljas med tabbtangenten – länkar och formulärkontroller – kan de ofta användas tillsammans med onfocus och onblur.

ondblclick. Utlöses av dubbelklick med musen. Någon motsvarighet för tangentbordet finns inte, så denna händelsehanterare skall inte användas.

Se även Ersätt inte skicka-knappen med javascript, sid 262, samt WCAG 6.4 (prioritet 2), sid 358, 8.1 (prioritet 1 & 2), sid 361, 9.2 (prioritet 2), sid 362, och 9.3 (prioritet 2), sid 362.

comments powered by Disqus