Morton 8 de diciembre de 2012 a las 07.56
   Imprimir artículo
elWebmaster.com

JavaScript: API para utilizar vibraci贸n en tu sitio web mobile


javascriptwide2Muchos de las nuevos APIs disponibles est谩n enfocados m谩s al desarrollo mobile que al usuario de escritorio. Un ejemplo es el API de vibraci贸n, que nos permite lograr que el dispositivo que el usuario controla vibre de una determinada forma por un determinado lapso de tiempo.

Detectar el soporte

En primer lugar, siempre es bueno chequear el soporte de este API antes de usarlo. Para detectar si es posible, esto es lo que necesitas:

  1. var supportsVibrate = "vibrate" in navigator;

Conceptos b谩sicos

La funci贸n navigator.vibrate acepta ya sea un simple n煤mero o un array de n煤meros por una serie de vibraciones. Cuando usamos el m茅todo array, los 铆ndices pares representan la duraci贸n de la vibraci贸n, y los 铆ndices impares representan una pausa antes de la siguiente vibraci贸n.

  1. navigator.vibrate(1000);
  2. navigator.vibrate([3000, 2000, 1000]);

Para detener la vibraci贸n cuando est谩 activa, simplemente pasa un 0 un array vac铆o al m茅todo navigator.vibrate:

  1. navigator.vibrate(0);
  2. navigator.vibrate([]);

Es importante notar que las vibraciones no entran en un ciclo hasta que sean detenidas con 0 o un array vacio. la vibraci贸n de n煤mero simple ocurre una vez y luego se detiene. El array de la duraci贸n de las vibraciones se ejecuta y luego se detiene otra vez.

Vibraci贸n constante

Algunas acciones de setInterval y clearInterval b谩sicas nos permitir谩n crear vibraci贸n persistente:

  1. var vibrateInterval;
  2.  
  3. function startVibrate(duration) {
  4.   navigator.vibrate(duration);
  5. }
  6.  
  7. function stopVibrate() {
  8.   if(vibrateInterval) clearInterval(vibrateInterval);
  9.   navigator.vibrate(0);
  10. }
  11.  
  12. function startPeristentVibrate(duration, interval) {
  13.   vibrateInterval = setInterval(function() {
  14.     startVibrate(duration);
  15.   }, interval);
  16. }

Por supuesto este fragmento de c贸digo no toma en cuenta el m茅todo array de vibraci贸n. La vibraci贸n persistente basada en array puede que requiera calcular la suma de los items array adem谩s de crear un intervalo basado en ese n煤mero (con una pausa adicional, 聽probablemente).

Por ahora, Firefox BETA para Android es el 煤nico navegador que soporta la API de vibraci贸n, pero ser谩 cuesti贸n de tiempo para que todos los navegadores la incorporen. Imagina que el tel茅fono vibre cuando una explosi贸n se muestre en el video, o utilizar la vibraci贸n para hacer m谩s visibles ciertas notificaciones. Las posibilidades son ilimitadas.

Si est谩s en tu dispositivo m贸vil leyendo esto y utilizas Firefox Beta, puedes probar esta demostraci贸n >>

Fuente original del art铆culo:聽David Walsh Blog
Traducci贸n realizada por
elWebmaster.com


Enviar a Del.icio.us Enviar a Meneame Enviar a Digg Enviar a Fresqui Enviar a Enchilame

Deja tu opinión

© 2007 - 2008 elWebmaster.com | Powered by Wordpress | Diseño CSS y XHTML válido. | Algunos íconos basados en FamFamFam Mini
Acceder