A chegada da HTML5 revolucionou não somente o conceito de se escrever marcação HTML, mas também expandiu radicalmente a própria finalidade da linguagem, conferindo-lhe uma nova missão, qual seja a do desenvolvimento de Aplicações Web.
Assim, é lícito afirmar-se que a HTML5 destina-se à criação de Web Sites essencialmente como fazia a HTML4 e anteriores e também de Aplicações Web ricas e interativas como não era possível com as HTML anteriores.
A era dos dispositivos móveis chegou e com ela a necessidade de aplicações específicas para tais dispositivos.
O W3C na consecução do seu objetivo maior de lutar pela criação de uma Web universal, não hesita em constituir Grupos de Trabalho para estudar e desenvolver novas tecnologias que visam a criar códigos universais.
Uma das áreas que vem experimentando uma movimentação intensa nesse contexto é a das API Web baseadas na JavaScript. Cada vez mais são criadas funcionalidades destinadas a manipular interatividade não só em interfaces de aplicações desktop como aquelas para dispositivos móveis.
No dia 8 de maio de 2012 a especificação do W3C para a Vibration API alcançou o status de Candidata a Recomendação.
Essa API cria funcionalidades que permite o acesso à funcionalidade nativa de vibração de dispositivos móveis. Vibrar o dispositivo é uma forma de fornecer ao usuário um feedback tátil.
A finalidade da vibração é a de fornecer um mecanismo de alto valor no desenvolvimento de jogos e não deve ser usada como mecanismo geral de notificação ao usuário.
A interface Vibration é extremamente simples e admite um único método denominado vibrate()
, para o elemento objeto navigator
.
vibrate()
Esse método admite um parâmetro em dois formatos: o número de milissegundos de duração da vibração ou um formato de lista de milissegundos separados por vírgula na qual os valores de ordem ímpar representam tempo de vibração e os valores de ordem par tempo de pausa em milessegundos. Os exemplos a seguir esclarecem os usos do método.
navigator.vibrate(1000); ...
ou alternativamente:
navigator.vibrate([1000]); ...
navigator.vibrate([1000, 500, 1500]); ...
navigator.vibrate([1000, 300, 1000, 600, 1000]); ...
navigator.vibrate(0); ...
ou alternativamente:
navigator.vibrate([]); ...
Nas pesquisas que fiz encontrei relatos que a Vibration API é suportada pelo navegador Firefox 11+ rodando em Android e em engines webkit, ambos com uso de prefixos proprietários como mostrado a seguir.
navigator.mozVibrate(); navigator.webkitVibrate();
Observei que o console JavaScript do navegador Firefox (Firebug) reconheceu normalmente o método navigator.mozVibrate()
, contudo o mesmo não ocorreu com o navegador Chrome que não reconheceu o método navigator.webkitVibrate()
.
Desenvolvi uma página simples para testar o funcionamento da API.
Testei no iPhone4 rodando Safari e Chrome e em ambos os navegadores a API não funcionou. Não tenho outros dispositivos para testar. Convido você a me ajudar, entrando na página de teste localizada em http://kwz.me/Eo e deixando seus comentários dizendo o navegador (Firefox ou WebKit, somente), a plataforma e modelo no qual testou e qual foi o resultado obtido.
AGRADEÇO antecipadamente pela sua colaboração.
Em 2006 comecei a publicar nesse blog uma série de desafios CSS que consistiam em…
Há muito tempo que eu não publico um "Teste seu conhecimento". Esta semana, revendo algumas…
Introdução Elementos da marcação HTML podem ser aninhados uns dentro de outros, criando-se uma cadeia…
HTML5? Web universal? É comum eu me deparar com dúvidas sobre a HTML5 não só…
Quem é Tab Atkins Jr? Tab Atkins Jr, um desenvolvedor americano, trabalhou durante muitos anos…
Pessoal, a BrazilJS Conf 2013 disponibilizou para o Maujor cupons de desconto para serem oferecidos…
View Comments
testei varias vezes o operna no meu sansung mas ainda não desisti, vou chegar lá!
otima referencia
Usando o Android 4.0 ( modificação Cyanogemmod ), com aparelho: Defy.
No navegador nativo nada, usando o firefox funcionou perfeitamente. Usando o prefixo MOZ.
Para que serve?
Gosto muito
Galaxy SIII Android 4.0 com Chrome não funcionou
Galaxy Tab 10.1 com Android 3.2 Browser nativo e Firefox (16) beta não funcionou.
Firefox (15) funcionou.
Testei Motorola Razr Maxx
Android 4.0.1
Chrome e Opera e Navegador Nativo Android
Não suporta API Vibration
nada aconteceu
Testei no Firefox 15 do Android 4.1.1. Alertou que tinha suporte para a api, mas não vibrou. :(
Nokia Belle no N8, browser padrão. Também não
muito útil essa funcionalidade.