2011-12-28 11 views
7

Podczas próby stworzenia gry za pomocą Canvas zauważyłem kilka dziwactw w przeglądarkach na tablety/telefony.Płótno HTML5 (gra) na iPadzie/tabletach z systemem Android

1) Jak wyłączyć płótno przed wyborem? Wygląda na to, że gdy użytkownik dotknie go, podświetla płótno i prawie próbuje go wybrać. Jest to niepożądane.

2) Gesty slajdów przeglądarki. Niektóre przeglądarki mają gesty slajdów, które zastępują wszelkie przechwytywania ruchu wykonane na płótnie lub stronie internetowej. Jest to wyjątkowo denerwujące i niepożądane.

3) Kontrola obszaru roboczego z elementami HTML UI. Zauważyłem, że gdy istnieje płótno z innymi elementami interfejsu użytkownika (np. Tekstem), czasami kliknięcie lub przeciągnięcie w obszarze roboczym spowoduje wyróżnienie części kodu HTML i zamiast tego przeciągnie elementy HTML zamiast uderzać w płótno.

Każda pomoc jest bardzo doceniana! Miałem nadzieję, że HTML5 będzie wystarczająco dojrzały, aby zapewnić dobrą kompatybilność zarówno na urządzeniach mobilnych, jak i na komputerach. Chodzi o to, aby móc kodować raz i grać wszędzie ... dzięki!

Odpowiedz

4

To powinno rozwiązać swoje problemy odnoszące się do # 1 i # 3:

canvas.addEventListener('selectstart', function(e) { e.preventDefault(); return false; }, false); 

# 2 wydaje się być strasznie osobnym pytaniu, ale nigdy nie miałem problemu z gestów ślizgowe nadrzędne żadnej z moich rzeczy płótnie . Spróbuj użyć e.preventDefault(); na początku wydarzeń dotykowych.

+0

Jesteś świetny. To działa. Próbowałem googling odpowiedzi, a nawet patrząc na bibliotekach stron trzecich i nie mogłem znaleźć tego pojedynczego wiersza kodu. Mam nadzieję, że pomoże to innym. – Adam

+0

Próbowałem tego, ale na Androidzie nic się nie zmieniło - stukając w dowolne miejsce na płótnie wciąż wybrałem całość. – Cbas

Powiązane problemy