29.1.2007 | Témata: Ajax, Pravidla použitelnosti
U aplikací psaných v Ajaxu se často zapomíná na ošetřování chyb při spojení se serverem – stávají se docela běžně, např. když dojde k chybě ve skriptu, nepodaří se spojit s databází, vypadne spojení stránky se serverem, na cestě se ztratí paket nebo pouze prohlížeč uživatele nepodporuje Ajax úplně dobře. Co s tím?
Když dojde k jakékoliv z chyb, které jsem vyjmenoval v úvodu, při normálním stahování stránky ze serveru (bez Ajaxu), objeví se v prohlížeči obvykle chybová stránka. Když ale stahujete data pouze na pozadí pomocí Ajaxu, nic takového se v případě chyby nestane – na stránce běží progress bar, ale uživateli brzy dojde trpělivost. Potom buď stránku zavře nebo stiskne Zpět či Aktualizovat, což mu obvykle situaci ještě zhorší.
Řešení nabízí Peter Quinsey v článku User-Proofing Ajax (A List Apart, 5.12.2006):
Pro podrobnosti a další informace vám doporučuji odkazovaný článek. Závěrem bych jenom připomněl, že chybová hláška (o které se v textu často mluví) by měla být na stránce velmi jasně vidět, měla by popsat problém lidským způsobem a měla by hlavně doporučit uživateli, jak dál pokračovat.
1. Dero | 29.1.2007, 9.20
![]()
Přesně tak. Když už používat AJAX, tak opravdu precizně s maximálním důrazem na použitelnost. AJAX je totiž výborný sluha, ale velice zlý pán.
2. habendorf | 29.1.2007, 11.19
Hm, myšlenka zcela jistě správná. Ovšem v obecné rovině se rozhodně netýká jen AJAXu, ale vpodstatě veškerého skriptování / programování / (webových) aplikací.
3. error414 | 29.1.2007, 12.04 ![]()
K tomu bych jeste pridal ze uzivatel nechce videt chybu:
Nastala chyba cislo X230, server odpovedel error404.
// nakonec jeste michani s anglictinou, to ho urcite dorazi
conection failed
4. Ronnie | 29.1.2007, 16.59
![]()
Takové chyby v ajaxu obsahuje server prace.cz, takže se týká i poměrně velkých a navštěvovaných serverů. V polovině dotazníku zůstal jen nekonečný progress bar a registraci nešlo dokončit.
5. MiSHAK | 1.2.2007, 17.58
![]()
Jo to je pravda. Někdy je zarážející, že někteří kódeři na to zapomínají i v javascriptových pseudoprototypech AJAXu.
6. Patrik | 5.6.2007, 23.43
Tohle mi prijde jako zaklad, ale je dobry na to upozornit...
Diskuse již není aktuální, další komentáře tedy není možné přidávat. Pokud mi i přesto chcete sdělit svůj názor na článek, kontaktujte mě.
V roce 2009 jsem založil firmu Optimics – měření a optimalizace webu.
Pravidelné krátké i delší články pro manažery, majitele a tvůrce webů. Hlavními tématy jsou návrh a řízení webu, zvyšování obchodní účinnosti webu, uživatelská přívětivost (použitelnost), internetový marketing, SEO a informační architektura.
Články by vám měly pomáhat tvořit weby, které plní své cíle – tedy především vydělávají.
Autorem článků je Martin Snížek, webový konzultant. Více o mně »
→ Co dělat spíš - analýzu použitelnost nebo uživatelské testování? Zajímavý pohled: http://bit.ly/9XpwG0
→ Segmentace návštěvníků jednoduše pomocí Google Analytics, Google Website Optimizer a BTBuckets: http://bit.ly/5AFTNo (via @paveljasek)
→ Reklama vs. direct marketing: http://bit.ly/735RKC (můžete si dosadit třeba i "klasickou komunikaci" a "search marketing").
→ Asynchronní kód GA bych radši nepoužíval. Hrozný bordel v zápisu eventů a custom proměnných za to podle mě nestojí.
© Martin Snížek 2005-2012
Snizekweb.cz – Martin Snížek o webdesignu. Běží na vlastním CMS.
ISSN 1802-2103
Praktické tipy pro copywriting
Přečtěte si praktické tipy a postupy, jak napsat kvalitní obchodní text pro web! Dozvíte se například, jak dosáhnout jednoduchosti textu, jak udělat text svěží, jak ho dostatečně zkrátit nebo jak nalézt všechny výhody prodávaného produktu.