Skip to content

Latest commit

 

History

History
153 lines (106 loc) · 5.67 KB

README.sv.md

File metadata and controls

153 lines (106 loc) · 5.67 KB

Modernizr

Modernizr är ett JavaScript-bibliotek som upptäcker HTML5- och CSS3-funktioner i användarens webbläsare.

npm version Build Status codecov Inline docs

Modernizr testar vilka inbyggda CSS3- och HTML5-funktioner som är tillgängliga i den aktuella UA och gör resultaten tillgängliga för dig på två sätt: som egenskaper på ett globalt Modernizr-objekt och som klasser på <html>-elementet. Denna information gör att du gradvis kan förbättra dina sidor med detaljerad information över upplevelsen.

Förändringar med v4

  • Avbrutet stöd för node versioner <= 10, uppgradera till minst version 12

  • Följande tester har bytt namn:

    • class till es6class för att vara närmare resten av es-testen
  • Följande tester har flyttats till underkataloger:

    • cookies, indexeddb, indexedblob, quota-management-api, userdata flyttade till storage underkatalogen
    • audio flyttade till audio underkatalogen
    • battery flyttade till battery underkatalogen
    • canvas, canvastext flyttade till canvas underkatalogen
    • customevent, eventlistener, forcetouch, hashchange, pointerevents, proximity flyttade till event underkatalogen
    • exiforientation flyttade till image underkatalogen
    • capture, fileinput, fileinputdirectory, formatattribute, input, inputnumber-l10n, inputsearchevent, inputtypes, placeholder, requestautocomplete, validation flyttade till input underkatalogen
    • svg flyttade till svg underkatalogen
    • webgl flyttade till webgl underkatalogen
  • Följande tester har tagits bort:

    • touchevents: diskussion
    • unicode: diskussion
    • templatestrings: dubblett av es6 detect stringtemplate
    • contains: dublett av es6 detect es6string
    • datalistelem: En dublett av Modernizr.input.list

Nya asynkrona händelselyssnare

Folk vill ofta veta när ett asynkront test görs så att de kan låta deras applikation reagera på det. Tidigare har du varit tvungen att lita på att titta på egenskaper eller <html>-klasser. Tester stöder ändast asynkrona händelser. Synkrona tester bör hanteras synkront för att förbättra hastigheten och bibehålla konsekvenser.

Det nya API:n ser ut så här:

// Listen to a test, give it a callback
Modernizr.on("testname", function (result) {
  if (result) {
    console.log("The test passed!");
  } else {
    console.log("The test failed!");
  }
});

Vi garanterar att vi bara kommer att anropa din funktion en gång (per gång du aktiverar on funktionen). Vi förser för närvarande inte en metod för att exponera "trigger"-funktionen. Istället, om du vill ha kontroll över dina asynkronatester, använd src/addTest-funktionen, och varje test som du ställer in kommer automatiskt att exponera och trigga on-funktionen.

Kom igång

  • Klona eller ladda ned arkivet.
  • Installera projektberoenden med npm install

Att bygga Modernizr

Från javascript

Modernizr kan användas via npm:

var modernizr = require("modernizr");

En build metod är exponerad för att generera anpassade Modernizr-builds. Exempel:

var modernizr = require("modernizr");

modernizr.build({}, function (result) {
  console.log(result); // the build
});

Den första parametern tar med ett JSON-objekt med alternativ och funktioner. Se lib/config-all.json för alla alternativ.

Den andra parametern är en funktion som anropas när uppgiften är klar.

Från kommandocentralen

Vi tillhandahåller också ett kommando för att bygga modernizr. För att se alla tillgängliga alternativ körs:

./bin/modernizr

Eller för att generera allt i 'config-all.json' kör detta med npm:

npm start
//outputs to ./dist/modernizr-build.js

Testa Modernizr

Så här kör du testerna med mocha-headless-chrome på konsolen:

npm test

Du kan också köra tester i den webbläsare du väljer med detta kommando:

npm run serve-gh-pages

och navigera till dessa två webbadresser:

http://localhost:8080/test/unit.html
http://localhost:8080/test/integration.html

Uppförandekod

Detta projekt följer Open Code of Conduct. Genom att delta förväntas du respektera detta.

License

MIT License