1 Prosinec

Ladění stránek bez zapnutého Javascriptu

Většina kodérů pokud na stránce použije Javascript (dále JS), tak už se nestará o ty, kteří JS mají vypnutý. Na svých webech (jako je např. tento blog) mě to také nezajímá nebo neřeším to do takových extrémů, protože počítám s tím, že moji návštěvníci mají JS zapnutý, ale na webech, které tvoří portfolio naší firmy a jsou pýchou naších referencí, se o uživatelé, kteří mají JS vypnutý starám!

Zvláštní CSS

První věc, kterou se snažím základní prvky ošetřit, je vlastní CSS styl. Takový styl sepíšu vždy až při finalizování samotného webu, kdy ladím právě tyto věci. Pro připojení speciálního CSS, které se bude načítat pouze pokud má uživatel JS zapnutý, používám tento kód, který umístím do hlavičky webu:


Tímto si načtu do zdrojového kódu CSS styl s názvem styles_js.css, ve kterém jsou speciální styly pro zobrazení různých JS fičur.
Pokud tedy např. použiju na webu slider, kterým budu listovat tam a zpět, tak bez JS tento script nebude fungovat, proto do hlavního stylu, ve kterém mám sepsaný celý web např. styles.css, dám tento slider display:none a naopak v souboru slider_js.css dám display:block a tím zaručím správnou funkčnost i pro ty co nemají zapnutý JS.

Odkaz ve kterém je javascript:void(0)

Typický příklad, kdy někdo dělá nějaký script nad odkazem a na něm volá např. onclickem nějakou funkci a aby nemusel ošetřovat odkaz, tak dá do pamateru href=“javascript:void(0)“ tímto udělá to, že při kliknutí na odkaz se nic neudělá, typický příklad:

alert ahoj světe

Toto je opravdu jednoduchý příklad, kde při zapnutém JS se při kliknutí na odkaz zobrazí vyskakovací okno, kde bude napsáno ahoj světe, při vypnutém JS se půjde na stránku alert.html, kde se dozvíme stejnou věc, ale v době internetových prohlížečů se záložkami a zvykem uživatelů je používat se mi tento způsob zdá opravdu příšerný, protože při zapnutém JS a snaha zobrazit stránku do nového okna se nám neudělá nic, a přitom řešení je jednoduché:

ahoj světe

Tímto si uživatel může „vybrat“, buď si klikne a zobrazí se mu vyskakovací okno ahoj světe a nebo si bude chtít zobrazit odkaz do nového okna a tím se mu zobrazí stránka alert.html.

Tyto příklady berte jen jako ukázku, nic jednoduššího mě nenapadlo! Chtěl jsem jen poukázat na základní problémy, na které kodéři zapomínají :)

Přidat na facebook.com Přidat na twitter.com Přidat na delicious.com Přidat na digg.com Přidat na stumbleupon.com Přidat na reddit.com
Přidat komentář