Je JavaScript prasárna?

Jaký je důvod toho, že spousta tvůrců webu považuje Javascript za
prasárnu? Tak takto nějak položil otázku do emailové konference WebSites@pandora.cz pan Pavel Juška. Je opravdu JavaScript prasárna? V jaké míře ho máme používat? Má vůbec cenu myslet na nějaké “zaostalce”, co si neumí ani nainstalovat novější prohlížeč?

S JavaScriptem je to jako s ohněm: Dobrý sluha, zlý pán.

JavaScript by měl být v každém případě používán pouze jako doplněk, bez kterého stránka neztrácí na funkčnosti a použitelnosti. Vhodným příkladem mohou být formuláře, kde se uživatel ještě před odesláním dozví, co zapomněl vyplnit. V takovém případě však nesmí chybět kontrola na straně serveru, která už musí být funkční stoprocentně a bez výjimky. Nápovědy zobrazené po najetí myši (nesmí chybět verze nápovědy bez použití JavaScriptu), vysouvací menu (opět musí být použitelné i bez JavaScriptu) nebo formátování textu pomocí on-line wysiwig editorů. Takovýchto podobných příkladů bych mohl vyjmenovat spoustu.

Dokonce JavaScript může návštěvníkům používání stránky zpříjemnit a ti, kteří používají JavaScript vypnutý nebo jejich prohlížeč toto zobrazování nepodporuje, budou o tento přídavek ochuzeni. Samozřejmě na ně tvůrci webu nesmí zapomenout a musí pro ně připravit alternativní možnost. Přesto se jim používání tohoto webu stane obtížnějším.

Z toho vyplývá, že JavaScript sám o sobě prasárna není.

Na internetu se však nachází mnoho webů, které na JavaScriptu staví a to je v každém případě chyba. Například používání pouze JavaScriptového menu je blbost. Nejen že návštěvníci bez JavaScriptu nemohou web používat a nedostanou se na žádné jiné podstránky, ale web se stává neindexovatelný také pro vyhledávače a tudíž jako by na internetu vůbec neexistoval. V tomto případě je použítí JavaScriptu prasárna.

Důležité je také, pro koho stránky tvoříte. Pokud je web určen pro interní firemní síť a vy víte, že všichni lidé v kancelářích mají prohlížeč Microsoft Internet Explorer 6 a podporu JavaScriptu zapnutou, neexistuje důvod, proč by jste se JavaScriptu měli vyhýbat. Na internetu však takovouto přesnou cílovou skupinu vymezit nelze, takže bohužel (bohudík) musíte tvořit stránky s ohledem na všechny uživatele.

Před použitím JavaScriptu si také pořádně spočítejte jeho velikost. Některé JavaScriptové kódy bývají dosti objemné, a místo toho aby práci zpříjemňovaly, od práce zdržují. Zamyslete se nad tím, jestli doba za kterou operaci vykoná JavaScript se vyplatí a přinese uživatelům takové zjednodušení, že se jim vyplatí počkat.

V již zmíněné konferenci se objevil názor:

“Stránky nemusí být zobrazitelné kdekoliv. Nevidím důvod, proč psát stránky, které si bude číst nějaký linuxář na lynksu, pokud jsou stránky obsahem určené pro grafické zobrazení (video, obrázky). V době MSIE 6.0, Mozzily a Konqueroru nevidím důvod, proč se “patlat” podporou všeho a všude. Vyberu si 2 majoritní prohlížeče na Windows, 2 pod Linux (grafické) a konec. Není přeci moje chyba, že má někdo prohlížeč, který zastaral před dekádou.”

Minulý odstavec, co jste si přečetli, rychle zapomeňte. Naopak. Dnes je doba, kdy majoritní podíl IE klesá a na trh přichází další spousta prohlížečů pro různé OS. Existují lidé, kteří surfují bez zapnutých obrázků a přesto využívají vaše stránky, přinášejí vám zisk a nakupují u vás. A vy se kvůli nim nebudete patlat? To je jako kdyby jste prodávali auta pouze mužům.

Internetové stránky musí být zobrazitelné kdekoliv a na jakémkoli prohlížeči. Nejde jen o nějaké staré textové prohlížeče, musíte myslet také na ty, kteří si prohlížejí stránky v jiném zařízení (PDA,…), ale nezapomínejme na handicapované (čtečky pro nevidomé), kterým takováto stránka může způsobit nepřekonatelný problém.

Raději ať díky nějakému JavaScriptu přijdete o validitu stránek, než aby jste kvůli nějakému opovrhování prohlížečů snížili přístupnost webu.

Přitom udělat použitelný web v HTML + CSS pro “všechny” není složité a tímto postupem máte (skoro) zaručené, že tento web bude stoprocentně přístupný a zobrazitelný. A požitek té největší části publika můžete s klidným srdcem zpříjemnit JavaScriptem.