Autor Zpráva
joe
Profil
Ahoj,

nevíte někdo, jestli by bylo možné na webu odchytit gesto (například přejetí prstem zleva doprava) při prohlížení na mobilním telefonu?

Díky
Chamurappi
Profil
Reaguji na joa:
Bylo, alespoň na Webkitech. Vyhledej si povídání o událostech ontouchstart, ontouchmove a ontouchend.
joe
Profil
Chamurappi:
(Není mi moc dobře), tak jsem toho po asi ne moc intenzivním hledání nenašel. Ale otestovat to na normálním PC asi nebude možné... (?) I když možná nějaký simulátor by to mohl zvládnout.
1Pupik1989
Profil
Co jsem tak pročítal, tak je to převážně pro iPhone. Škoda, že do opery mini to ještě neimplantovali.
Chamurappi
Profil
Reaguji na joa:
Ale otestovat to na normálním PC asi nebude možné... (?)
WebKit má API vymyšlené tak, že umí pracovat i s více dotyky, což by se simulovalo těžko. Ale ten jeden dotyk jde docela snadno sjednotit s chováním myši. Sám mám sedm let starý mobil, takže skripty pro dotykové displeje píšu většinou naslepo — stačí vzít v úvahu tři pravidla:
1) ontouchstart je jako onmousedown, ontouchmove je jako onmousemove, ontouchend je jako onmouseup.
2) Souřadnice při ontouchstart se nezjišťují z event, ale z event.touches[0] (pro první dotyk). Vlastnosti obsahující souřadnice se jmenují stejně jako na eventu.
3) Souřadnice při ontouchmove a ontouchend se zjišťují z event.changedTouches[0].

Když jsem měl od známého zapůjčený iPad, zkoušel jsem naskriptovat gesto vyžadující šest prstů. Fungovalo to. Pak jsem chtěl zkusit ještě gesto pro jedenáct prstů, ale na to jsem už neměl čas a prsty.


Reaguji na 1Pupika1989:
Škoda, že do opery mini to ještě neimplantovali.
Myslím, že to ani není možné. Pokud vím, tak Opera Mini je jen zobrazovač stránek předžvýkaných desktopovou Operou kdesi v Oslu, nemůže podporovat nic dynamického.
Medvídek
Profil
joe:
možná ti pomůže tohle, funguje celekm spolehlivě. Dělám teď jednu aplikaci pro androida přes PhoneGap, kterej podporuje jQuery mobile a šlape to jak má.
Chamurappi
Profil
Reaguji na Medvídka:
Je vhodné podotknout, že jQuery Mobile není mobilní jQuery, ale spíš mobilní jQuery UI (s mizernou dokumentací a nestabilním API), které se především snaží nahradit nativní formuláře za simulované iPhoní formuláře, aby se v tom uživatel lépe vyznal (respektive aby se hloupí projekťáci mohli radovat z toho, že to všude vypadá na pixel stejně).
Určitě existuje i nějaký rozumný (a malý) plugin pro jQuery umožňující pohodlnou práci s dotykovými událostmi, který s sebou netáhne tolik balastu.
Medvídek
Profil
Chamurappi:
Je to možný, my to používáme právě pro to, aby stránka vypadala jako nativní apliakce. Navíc ty stránky pak převádíme na opravdové aplikace, proto se nemusíme dělat s extra grafikou.
Bohužel už není podpora notifikací, akcelerometru a aktuální polohy, proto to převádíme na nativní aplikaci.
srigi
Profil
Na toto som raz nasiel peknu "slim" kniznicu.
1Pupik1989
Profil
Chamurappi: Opera mini třeba umí klasicky javascript, nebo nevím jakým způsobem by to šlo odeslat z proxy. Hlavní škoda je, že opeře mini zakázali časování, takže settimeout a setinterval funguje maximálně 10 vteřin. O vestavěném prohlížeči nemluvě, i když doma je už jiná. Rozpoznávăní gest v podobě API je už i pro Android mám pocit, ale pořád to bude zádrhel. Jediné východisko vidím v samostatné aplikaci pro web jedině.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0