Fronteers — vakvereniging voor front-end developers

Webrichtlijn 86 en 87: Formulieren en JavaScript

Vermijd automatische doorverwijzing bij interactie met formulieren. (R-pd.13.4) Gebruik geen client-side script of formulieren als de enige manier om informatie op de site te bereiken. (R-pd.13.5)

Tegen de eerste webrichtlijn van vandaag 13.4 wordt vaak gezondigd. Veel websites gebruiken een selectiemenu als navigatie en springen gelijk na het selecteren naar de betreffende pagina. Is het niet zo dat veel bezoekers juist verwachten om vanzelf naar een pagina te worden gebracht na het kiezen uit een dergelijk selectiemenu? Is deze richtlijn daardoor niet verouderd? Zelfs usabilityguru Jakob Nielsen beweert dat regels af en toe veranderen omdat het gebruik van het web niet stilstaat, maar constant evolueert en de gebruikers mee-evolueren. Is het niet juist gebruikersvriendelijk om vanzelf te worden doorgelinkt? Daarnaast is een "Ga"-knop eenvoudig toe te voegen door deze tussen <noscript>-tags te zetten.

De tweede webrichtlijn 13.5 is om een website optimaal beschikbaar te maken voor zoekmachines. Zoekmachines ondersteunen in het algemeen geen JavaScript en ze zullen ook geen formulieren versturen. Om alle pagina's van een website geïndexeerd te krijgen, zullen ze moeten worden opgenomen in lijsten met links, die voor de zoekmachine toegankelijk zijn.

Deze praktijk zien we bij de meeste database-gebaseerde websites terugkomen en mag als algemeen bekend worden aangemerkt. Hoe ga jij hiermee om? Maak je lijsten met links speciaal voor zoekmachines of zijn de links dezelfde die gebruikers zien? Zijn er gevallen waarbij je juist niet de informatie via links toegankelijk maakt?

Reacties

1 Frank van Gemeren op 11-08-2009 om 23:03 uur:
Gebruikers hebben baat bij een snelle ervaring. Zoekmachines komen daarbij op de tweede plaats. Gehandicapte gebruikers kunnen inderdaad netjes worden opgevangen door een noscript. En voor het totaalplaatje voor zoekmachines heb je natuurlijk altijd een sitemap, hetzij in een aparte HTML-pagina, bereikbaar via een linkje ergens onderaan, hetzij in XML.

Ik gebruik de lijstjes-manier niet op mijn sites, dus ik kan er weinig nuttigs over zeggen. Ik vind ze zelf meestal irritant. Een nette UL met de opties als LIs werkt beter dan een lelijke SELECT. Desnoods gebruik je wat CSS en/of DOM-scripting voor uitklapbare menuutjes, zodat de lijst niet de hele pagina bedekt.
2 Boye Oomens op 14-08-2009 om 09:15 uur:
Door het weglaten van een “Ga”-knop impliceer je eigenlijk al dat men na het kiezen van een optie automatisch doorverwezen wordt, wellicht dat dit in sommige gevallen visueel verduidelijkt kan worden voor de wat minder toegewijde bezoekers.

Verder zou ik een dergelijke “Ga”-knop unobtrusively plaatsen i.p.v. een <noscript> element.

@Frank: een <select> is inderdaad verre van charmant maar heeft wel bepaalde semantiek die bekend en vertrouwd is bij de bezoeker, echter zie je dit niet altijd terug in bijv. een <ul> element wat als vervanging dient (zoals 't navigeren met je keyboard etc.).
3 Bas Rozema op 14-08-2009 om 16:40 uur:
Een select die het onchange event gebruikt geeft altijd problemen voor een gebruiker die met zijn toetsenbord navigeert. Daarom, altijd een 'Ga' knop erachter om expliciet een selectie te kunnen maken.
4 Mallory op 03-09-2009 om 08:54 uur:
"Gehandicapte gebruikers kunnen inderdaad netjes worden opgevangen door een noscript."

Vaak werken noscript tags niet... je moet helemaal geen JS hebben, anders toont de noscript niet. Ook zie ik vaak noscript en noframe tags (en ook "skip to main content" links) in het Engels van templates... de developer had nooit naar ze gekeken. Ik voel dat mensen slecht gebruik maken van noscript tags en ook dat ze denken niet aan mensen die achter een firewall of scriptblocker zitten. Voor die mensen moet het klaar zijn wat ze moeten doen of dat scripts zijn verwacht of zoiets. Dat scheelt. Als ik naar my script-draaiendee browsers moet gaan om alleen te begrijpen hoe de pagina werkt dan is het een Fail. : (

@Bas, da's een gooie reden om onkeyup of in ieder geval een toetsenbord EN een muis versie te coden.

Maar als een geen-JS gebruiker vind ik een duidelijk knop altijd prettiger.
Plaats een reactie