Opera mini, urządzenia mobilne i Javascript
Tworząc strony lub aplikacje internetowe wykorzystujące Javascript pamiętajmy o wszystkich klientach, także o tych mobilnych. Sam dosyć często korzystam z przeglądania sieci w podróży pociągiem lub na mieście by sprawdzić adres firmy, rozkład jazdy autobusów.
Gdy projektując stronę użyjemy Javascriptu to możemy ją przetestować na 98% przeglądarek używanych przez internautów korzystających z komputera (Firefox, Opera, Safari, IE), a co z klientami mobilnymi? Czy zadziała tam Javascript? Czy ładowanie danych przez ajaxa nie jest zbyt skomplikowane dla komórek?
Przede wszystkim pamiętajmy, aby pisać tak strony lub aplikacje, aby działały bez obecności Javascriptu. Oczywiście w przypadku aplikacji internetowych (takich jak Gmail, Google Docs) funkcjonalność może być okrojona, ale ważne, żeby klient mógł zobaczyć kluczowe z jego punktu widzenia dane. Dla poczty będą to ostatnie listy ze skrzynki odbiorczej, dla aplikacji typu Google Docs np. podgląd dokumentów (bez edycji).
Czy teraźniejsze urządzenia mobilne (komórki, ipod touch, palmtopy, smartphony ) obsługują Javascript? Na szczęście dla nas większość nowych urządzeń to potrafi.
iPhone oraz iPod Touch posiadają wbudowaną przeglądarke Safari w której Javascript działa bardzo dobrze. Świadczą o tym gry i aplikacje pisane w Javascript przeznaczone dla tych urządzeń.
A co ze zwykłymi komórkami? Telefony marki Nokia z serii N i E posiadają wbudowaną przeglądarkę, która radzi sobie z Javascriptem i Ajaxem, więc drop-down menu i ładowanie danych przez Ajaxa nie stanowi problemu.
Na większości nowych komórek możemy zainstalować Operę Mini. Przeglądarka ta jest napisana w Javie i działa na trochę innej zasadzie niż wymienione powyżej. Mianowicie każde żądanie jest wysyłane przez przeglądarkę do serwerów Opery, gdzie widok strony jest generowany i odsyłany spowrotem do przeglądarki w przystosowanej do komórki formy. Od wersji 4 ta przeglądarka obsługuje Javascript. Co prawda należy pamiętać o tym, że tak naprawdę nasz kod javascriptu nie będzie wykonywany w komórce klienta, lecz na serwerze Opery. Oto do czego możemy wykorzystać Javascript w Operze Mini:
- Walidacja formularzy (zdarzenia onSubmit oraz onClick działają poprawnie)
- Ładowanie części strony przez Ajaxa (co prawda tracimy tutaj przewagę Ajaxa, ponieważ strona i tak musi się przeładować,)
- Ułatwienia w formularzach tj. dynamiczne selecty (np. z listą województw i zależnym od tego drugim selectem z listą powiatów), ponieważ zdarzenia onChange są obsługiwane
A do czego Javascript w Operze Mini się nie nadaje?
- Animacje z wykorzystaniem javascriptu nie zadziałają, bo setTimeout i setInterval nie są obsługiwane
- Efekty typu roll-over, zdarzenia związane z myszką i klawiaturą (oprócz onclick) nie są obsługiwane
- i wiele innych, których nie sposób tu wymienić, wynikające z tego, że dostajemy wynikową stronę, a sam javascript został wykonany i obsłużony na serwerze
Należy postrzegać obsługę Javascriptu w Operze Mini tak jak technologie server-side, a mniej jak technologię client-side.
Jak ktoś ma nowy telefon lub jakieś inne urządzenie mobilne zachęcam do przetestowania czy działa tam poprawnie Javascript. Prosty przykład znajduje się tutaj http://www.javascript.net.pl/examples/portable_devices/index.html . Jeśli korzystacie z wbudowanej w telefon przeglądarki napiszcie czy działa wam ten przykład wraz z modelem komórki.

W Nokii 6230 we wbudowanej przeglądarce w ogóle nie ma przycisków, ale w Operze Mini v4.1 wszystko działa.
Wszystkie komórki z symbianem obsługują javascript, nie tylko serie N i E.
Dodaj nową odpowiedź