Standardy sieciowe - Nieinwazyjny JavaScript

Nieinwazyjny JavaScript

wtorek, 20 maj, 2008

Czasem nie można polegać na aktywnym JavaScripcie - niektóre osoby wyłączają skrypty domyślnie, gdyż zbyt obciążają łącze. Ma to sens choćby w komórkach, gdzie ‘zassanie’ jakiegoś większego skryptu potrafi mocno opóźnić załadowanie się całej strony. Między innymi dlatego podczas tworzenia serwisów warto stosować nieinwazyjny JavaScript (z ang. unobtrusive). Jednakże, cały czas można spotkać osoby, które nie widzą potrzeby w stosowaniu takiego podejścia. W końcu dużo prościej jest założyć, że wszyscy mają pełne wsparcie JavaScriptu - któż się nie spotkał z argumentem, że dla kilku % użytkowników bez tego wsparcia nie warto się wysilać… Na szczęście przybywa osób widzących w nieinwazyjnym JavaScripcie coś więcej niż tylko nośne hasło - osobom nieobeznanym z tym zjawiskiem proponuję kilka zasad składających się na jego charakterystykę.

  1. Należy unikać błędnych założeń - warto przetestować gotowy serwis przy wyłączonym JavaScripcie, a jeśli coś działa niepoprawnie, to jest to wynik błędnego założenia, że wszyscy mają aktywny JavaScript w swojej przeglądarce;
  2. Należy logicznie zaprojektować kod HTML - warto przed lub w czasie kodowania zaplanować wszelkie możliwe relacje elementów kodu HTML z JavaScriptem, co pozwoli na łatwe ‘zaczepienie’ skryptu o wybrany element struktury strony;
  3. Należy unikać rozdętych skryptów - warto używać CSS tam, gdzie jest to możliwe; trawersowanie drzewa dokumentu z użyciem JavaScriptu jest wolniejsze i często zbędne, szczególnie jeśli chodzi tylko o aspekt wizualny danego elementu;
  4. Należy zrozumieć zarówno przeglądarki, jak i użytkowników - warto zastanowić się czy wielkie możliwości, jakie oferuje JavaScript nie stoją w sprzeczności z możliwościami przeglądarek, jak również z potrzebami użytkowników; bywa, że przy wyłączonym JavaScripcie ‘przebajerzone’ interfejsy po prostu zawodzą;
  5. Należy pojąć naturę zdarzeń - warto zagłębić się w dokumentację JavaScriptu i ze zrozumieniem stosować obsługę zdarzeń (z ang. event handling), co pozwoli w pełni odseparować skrypty od kodu HTML;
  6. Należy unikać konfliktów - warto zastanowić się czy zastosowanie dwóch różnych bibliotek/skryptów nie spowoduje błędów w działaniu całego serwisu internetowego; warto też optymalizować już istniejący kod;
  7. Należy brać pod uwagę przyszłość serwisu - warto pisać skrypty tak, aby kolejny koder lub programista nie mieli problemu z rozeznaniem się w zastanych zapisach (komentarze - choćby bardzo ogólne - są rzeczą niezwykle cenną).

Mam nadzieję, że powyższe zasady pozwolą zrozumieć sens planowania i tworzenia nieinwazyjnego JavaScriptu. Dzięki temu końcowe serwisy internetowe mogą powstawać szybciej, charakteryzować się większą jakością i być łatwiejsze w utrzymaniu. Więcej na temat dobrych praktyk związanych z nieinwazyjnym JavaScriptem do znalezienia w artykule Christiana Heilmanna, który jest niekwestionowanym autorytetem w tej dziedzinie.

W. Mazurek

Zostaw komentarz

Obowiązkowo

Obowiązkowo

Dozwolone znaczniki:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>

Trackback  |  RSS Feed