2010-03-17 13 views
11

En iPhone, iPod touch y (presumiblemente) iPad, Apple tiene multi-touch event handling disponible a través de JavaScript en Mobile Safari. Sé que el Nexus One recientemente agregó soporte multitáctil a través de una actualización, y creo que webOS también está habilitado para multitáctiles. ¿Tiene Android 2.1 y/o webOS acceso a multitáctil en el navegador, o es actualmente exclusivo de los dispositivos de Apple?¿Los dispositivos Android/webOS admiten eventos Javascript multi-touch?

Respuesta

17

El mejor maestro de seguimiento de eventos de toque (! Que no sea multi-touch - la explicación anterior) parece ser:

http://quirksmode.org/mobile/tableTouch.html

En este momento, Android 2.1 se pellizca/zoom, pero eso es todo. No hay un seguimiento multi-touch de grano fino, como el que obtienes en el iPhone.

actualización: Mayo 2011 - Android Honeycomb 3.0 y 3.1 de los navegadores ahora tienen adecuada multitouch

+0

Esto es lo más parecido a una respuesta que he visto: he logrado probar en un Nexus One con la actualización multitáctil en mi propia aplicación, y todavía no admiten eventos multitáctiles a través de Javascript. –

+0

¿El T-Mobile G1 y G2 admite multi-touch? – RobKohr

+0

¿Tiene un enlace a la nueva especificación multitáctil Honeycomb? – LeRoy

0

Depende del navegador. El navegador del HTC Hero, que actualmente ejecuta Android 1.5 y la interfaz TouchFlo personalizada de HTC, siempre ha tenido multitáctil. El navegador 'Dolphin' también tiene multitouch desde antes de la actualización de Android 2. Dicho esto, nunca he intentado utilizar el multitouch para nada más que 'pellizcar zoom', por lo que podría no funcionar con un Javascript específico o algo así.

2

En Palm webOS, puede obtener múltiples eventos táctiles. Puede recibir hasta cinco puntos de contacto a la vez.

Si está haciendo un desarrollo nativo utilizando el PDK, se describe cómo manejar varios toques en http://developer.palm.com/index.php?option=com_content&view=article&id=1980&Itemid=337. Cada dedo se rastrea como un mouse separado en los eventos SDL.

Para los desarrolladores de Javascript que usan el SDK estándar, hay eventos que se envían para indicar que hay dos dedos en uso. "gesturestart" se dispara cuando el usuario coloca 2 dedos en la pantalla, generalmente para pellizcar o rotar, "cambio de gesto" se dispara cuando uno o ambos dedos se mueven en la pantalla, y "gestureend" se dispara cuando los dedos se levantan de la pantalla. Estos no están bien documentados en el sitio del desarrollador de Palm, pero se usan en el código de muestra de mojomatters.

Editar: mirando su pregunta de nuevo, no hay soporte de eventos "táctil" en el navegador en WebOS para aplicaciones entregadas a través de sitios web.

0

Depende del dispositivo. Pero creo que el dispositivo Android 2.x actual tiene todo multitouch.

0

En el Samsung Galaxy Tab he probado el navegador Android 2.2, Dolphin HD 4 y Opera Mini 5. La implementación más cercana a lo que estoy buscando es http://anders.com/cms/352/OpenLayers/iPhone/Android/Touch.Gestures (demo que termina en '/ touchmaps' en esa página) que funciona con el navegador Android 2.2. Esto toca tocar solo con el dispositivo Android, pero no captura de gestos de zoom de pellizco en Javascript, que es lo que realmente necesito.

Firefox 4 tiene la mejor y mejor documentada API multi-touch de javascript. Esto se implementa actualmente en Firefox 4 beta 3 (desafortunadamente solo en Windows 7). Tengo FF4 beta 2 ejecutándose en el dispositivo, pero todavía no tiene soporte multitáctil.

Espero que FF4 b3 para Android haga lo que yo quiera, y que la implementación del otro navegador siga el mismo camino. Hasta entonces solo es esperar y ver.

Cuestiones relacionadas