3.9 KiB
Português-BR
Modernizr é uma biblioteca de JavaScript que detecta recursos HTML5 e CSS3 no navegador do usuário.
Modernizr testa quais recursos nativos de HTML5 e CSS3 estão disponíveis na UA atual, e deixa os recursos disponíveis para você em duas maneiras: como propriedades num objeto global Modernizr, e como classes no elemento <html>. Essa informação permite que você melhore progressivamente suas páginas com um nível granular de controle sobre a experiência.
Mudanças com a v4
-
Fechou o suporte para Node 8, por favor atualize para Node v10
-
Esses testes foram removidos:
touchevents: discussionunicode: discussiontemplatestrings: duplicate of the es6 detectstringtemplatecontains: duplicate of the es6 detectes6stringdatalistelem: A dupe of Modernizr.input.list
Novos Event Listeners Assíncronos
Várias vezes as pessoas querem saber quando um teste assíncrono é feito pra que eles possam autorizar suas aplicações a reagir com ele. No passado, tinha que confiar em ficar monitorando propriedades ou em classes <html>. Apenas eventos em testes asynchronous possuem suporte. Testes síncronos devem ser manipulados sincronamente para aumentar velocidade e manter consistência.
A API nova está assim:
// Listen to a test, give it a callback
Modernizr.on('testname', function( result ) {
if (result) {
console.log('O teste passou!');
}
else {
console.log('O teste falhou!');
}
});
Nós garantimos que só vamos invocar sua função uma vez (por vezes que você chame on). Atualmente não estamos expondo um método para expôr a funcionalidade trigger. Em vez disso, se você gostaria de ter controle sobre testes assíncronos, use o recurso src/addTest, e qualquer teste que você faça vai automaticamente expôr e ativar a funcionalidade on.
Começando
- Clone ou baixe o repositório
- Instale as dependências do projeto com
npm install
Construindo Modernizr
Pelo JavaScript
Modernizr pode ser usado programaticamente via npm:
var modernizr = require("modernizr");
Um método build é exposto para gerar builds customizadas do Modernizr. Exemplo:
var modernizr = require("modernizr");
modernizr.build({}, function (result) {
console.log(result); // a build
});
O primeiro parâmetro pega um objeto JSON de opções e detector de recursos para incluir. Veja lib/config-all.json para todas opções disponíveis.
O segundo parâmetro é uma função invocada pela conclusão de tarefa.
Pela linha de comando
Nós também disponibilizamos uma interface na linha de comando para a construção do Modernizr. Para ver todas opções disponíveis digite:
./bin/modernizr
Ou para gerar tudo no 'config-all.json' digite isso com o npm:
npm start
//outputs to ./dist/modernizr-build.js
Testando Modernizr
Para executar os testes usando mocha-headless-chrome no console, use:
npm test
Também tem como fazer testes no navegador de sua escolha com esse comando:
npm run serve-gh-pages
e navegando para essas duas URLs:
http://localhost:8080/test/unit.html
http://localhost:8080/test/integration.html
Código de Conduta
Este projeto adere ao Código Aberto de Conduta. Participando deste projeto, é esperado que você honre esse código.