Os eventos de luz ambiente são uma maneira útil de tornar uma página da Web ou uma aplicação consciente de qualquer alteração na intensidade da luz. Isso permite que eles reajam a tal mudança, por exemplo alterando o contraste de cores da interface do usuário (UI) ou alterando a exposição necessária para tirar uma foto.
 

Eventos de  luz

Quando o sensor de luz de um dispositivo detecta uma mudança no nível de luz, ele notifica o navegador dessa alteração. Quando o navegador obtém tal notificação, ele dispara um evento DeviceLightEvent que fornece informações sobre a intensidade da luz exata.

Este evento pode ser capturado no nível do objeto da janela usando o método addEventListener (usando o nome do evento devicelight) ou anexando um manipulador de eventos à propriedade window.ondevicelight.

Uma vez capturado, o objeto de evento dá acesso à intensidade da luz expressa em lux através da propriedade DeviceLightEvent.value.

Exemplo

window.addEventListener('devicelight', function(event) {
  var html = document.getElementsByTagName('html')[0];

  if (event.value < 50) {
    html.classList.add('darklight');
    html.classList.remove('brightlight');
  } else {
    html.classList.add('brightlight');
    html.classList.remove('darklight');
  }
});

Especificações

Especificação Estatus Comentário
Sensor de luz ambiente A definição de "Ambient Light Events" nessa especificação.

Rascunho do Editor

Definição inicial

Compatibilidade do navegador

Estamos convertendo nossos dados de compatibilidade para o formato JSON. Esta tabela de compatibilidade ainda usa o formato antigo, pois ainda não convertemos os dados que ela contém. Descubra como você pode ajudar!

Característica Chrome Firefox (Gecko) Internet Explorer Opera Safari
DeviceLightEvent Não suportado 22.0 (22.0)[1] Não suportado Não suportado Não suportado
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
DeviceLightEvent Não suportado support 15.0 (15.0)[1] Não suportado Não suportado Não suportado

[1] O evento "devicelight" é implementado e a preferência ativada por padrão no Firefox Mobile para Android (15.0) e no Firefox OS (B2G). Começando com Gecko 22.0 geckoRelease ("22.0"), uma implementação de desktop para Mac OS X também está disponível. O suporte para o Windows 7 está em andamento (veja bug (754199)).

Veja também

Etiquetas do documento e colaboradores

Colaboradores desta página: andre-mendes
Última atualização por: andre-mendes,