2012-04-28 8 views
6

Próbuję pracować na interfejsie na html5 na urządzenia mobilne. Staram się podążać za obiektem, z touchstartem/touchmove/touchend/touchcancel. ale gdy próbuję śledzić Mouvement ja zawsze dobrze quikly mieć au „touchcancel” i nie więcej touchmove potem ...html5/android touchcancel

gdy próbuję to: http://miniapps.co.uk/code/touchcancel/ to działa doskonale, nie mam żadnego problemu.

Ale myślę, że problem pochodzi z działania przeglądarki internetowej, która zakłóca moje płótno. Czy wiesz, czy mogę to naprawić?

// staram się wyjaśnić więcej: - Tu jest mój kodu testu: http://frys.free.fr/mNaissance/test.html jest to „Jigsaw” kod puzzle, które staram się pracować z telefonu komórkowego. Miałem "log" div hunder w tekście. A kiedy wykonuję "touchmove" na szarym płótnie, mam bardzo szybki "touchcancel" i już nie ma "touchmove" Czy to jest bardziej zrozumiałe? Przepraszam za mój słaby angielski !

Dzięki za pomoc

+0

Nie mam pojęcia, o czym mówisz. Proszę bardziej precyzyjnie. I możliwe dodanie kodu, który nie działa, lub więcej przykładów wyjaśniających, co wypróbowałeś – Entreco

+0

Po prostu wpadłem na coś, co moim zdaniem jest tym samym problemem: pytanie brzmi: "Przeglądarka Android czasami wywołuje imprezę z touchcancel bez żadnego oczywistego powodu, dlaczego?" // ten sam kod działa poprawnie na urządzeniach z systemem iOS – Corkscreewe

+0

Twoje łącza nie działały, ale to pytanie SO może mieć pewne wskazówki: http://stackoverflow.com/questions/15944197/ –

Odpowiedz

7

wierzę I okazało się, jakie są tego powody - Android przeglądarka (jak również Chrome dla Androida 4.0+) uważa, staramy się przejść, więc pożary zdarzenie touchcancel. Czynność, którą należy wykonać, jest wykonywana podczas przechwytywania zdarzenia touchmove, które należy wykonać: .

+2

Moja sprawa była powiązana, ale użycie tego nie spowodowało Wsparcie. Dla tych, którzy mogą mieć problem związany z OP, zobacz to pytanie: http://stackoverflow.com/questions/15944197/ –

+0

To rozwiązanie ma teraz zastosowanie również do wersji Chrome na komputery z tych samych powodów. – thure

+1

Nie jest to związane tylko z przeglądarką dla systemu Android, jest to zgodne z projektem, ponieważ przeglądarka musi we wszystkich przypadkach automatycznie przejmować takie działania, jak przesuwanie i powiększanie. Z tego powodu przeglądarka uruchamia zdarzenie 'touchcancel', gdy przejmuje funkcję' touchmove' zdarzenie, aby uniemożliwić wykonanie 2 różnych akcji dla tego samego zdarzenia (miałoby to fatalne wyniki) – andreszs