Saltar al contenido principal
Massively Fun Un pequeño estudio indie que crea juegos extraños y encantadores, mostrando exactamente cómo los construimos.

Algunos enlaces de este sitio son de afiliados: si compras a través de ellos, es posible que recibamos una comisión sin coste adicional para ti. Esto nunca afecta a nuestras recomendaciones. Consulta nuestra declaración de afiliados para más detalles. Divulgación de afiliados.

Eventos táctiles

Eventos táctiles

Es posible crear aplicaciones conscientes del tacto que funcionen en numerosos dispositivos móviles. Los navegadores de escritorio compatibles con eventos táctiles están casi aquí; prepárate desde ya.

Aparecieron por primera vez en Mobile Safari para iOS 2.0.

Cuatro eventos básicos:

  • touchstart
  • touchmove
  • touchend
  • touchcancel

Campos del objeto Event:

  • touches
  • targetTouches
  • changedTouches
  • Teclas modificadoras (shift, alt, ctrl, meta)

Campos del objeto Touch:

  • identifier
  • clientX/Y
  • pageX/Y
  • screenX/Y

Actualmente es un Borrador de Trabajo del W3C. Todavía existen muchas diferencias entre proveedores:

  • touchenter / touchleave (Firefox, Blackberry)
  • gesturestart / gesturechange / gestureend (Mobile Safari)
  • MSPointer* / MSGesture* (IE10)

Comportamiento nativo

Dispositivos con métodos de entrada alternativos.

  • FF6+ admite eventos táctiles al estilo del W3C.
  • IE10 cuenta con MSPointer* / MSGesture*.
  • Aún sin soporte en WebKit.

Desactivar el manejo estándar de gestos (desplazamiento / zoom / scroll)

<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">

y

document.body.addEventListener('touchmove', function(event) {
  event.preventDefault();
}, false);

Desactivar el manejo estándar de gestos (desplazamiento / zoom / scroll)

Gestionar la renderización en un bucle:

Relacionado: — Arte, herramientas y plantillas listas para usar que se incluyen directamente en tu proyecto de Unity.

var touches = [], // también podrías usar requestAnimationFrame() aquí
renderLoop = setInterval(function() {
  draw(touches); // llama a nuestra función de dibujo
}, 15);

myElement.addEventListener('touchmove', function(e) {
  touches = e.touches;
}, false);

Desactivar el manejo estándar de gestos (desplazamiento / zoom / scroll)

Gestionar la renderización en un bucle.

Soportar dispositivos de un solo punto táctil (por ejemplo, teléfonos Android).

Desactivar el manejo estándar de gestos (desplazamiento / zoom / scroll)

Gestionar la renderización en un bucle.

Nuestra elección: — Cursos bajo demanda que cubren Unity, Unreal, C++, C# y programación de sombreadores.

Soportar dispositivos de un solo punto táctil (por ejemplo, teléfonos Android).

Gestionar eventos de ratón para:

  • Teléfonos con hardware de puntero físico (por ejemplo, muchos terminales Android).
  • Teléfonos sin eventos táctiles (por ejemplo, Windows Phone 7).
  • Navegadores de escritorio sin soporte táctil (por ejemplo, Chrome).

Desactivar el manejo estándar de gestos (desplazamiento / zoom / scroll)

Gestionar la renderización en un bucle.

Soportar dispositivos de un solo punto táctil (por ejemplo, teléfonos Android).

Gestionar eventos de ratón.

Soportar navegadores de escritorio con capacidad táctil:

Relacionado: — Libros de programación de juegos, teclados mecánicos, monitores y hardware de escritorio de desarrollo..

  • Firefox (eventos táctiles al estilo del W3C)
  • IE10 (MSPointer*)

@ @ggoodale


Crea juegos HTML5 en tu navegador

Motor HTML5 sin código basado en navegador que exporta a la web, dispositivos móviles y computadoras de escritorio