Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
Worklet
Baseline
Weitgehend verfügbar
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit April 2021 browserübergreifend verfügbar.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Das Worklet-Interface ist eine leichtgewichtige Version von Web Workers und gibt Entwicklern Zugriff auf niedrigstufige Teile der Rendering-Pipeline.
Mit Worklets können Sie JavaScript und WebAssembly-Code ausführen, um Grafik-Rendering oder Audioverarbeitung zu realisieren, wo hohe Leistung erforderlich ist.
Worklets erlauben den statischen Import von ECMAScript-Modulen, falls unterstützt, mit dem import. Dynamischer Import ist durch die Spezifikation nicht erlaubt — ein Aufruf von import() wird einen Fehler werfen.
Arten von Worklets
Worklets sind auf spezifische Anwendungsfälle beschränkt; sie können nicht für beliebige Berechnungen wie Web Workers verwendet werden. Das Worklet-Interface abstrahiert Eigenschaften und Methoden, die allen Arten von Worklets gemeinsam sind, und kann nicht direkt erstellt werden. Stattdessen können Sie eine der folgenden Klassen verwenden:
| Name | Beschreibung | Standort | Spezifikation |
|---|---|---|---|
| [`AudioWorklet`](/de/docs/Web/API/AudioWorklet) | Für die Audioverarbeitung mit benutzerdefinierten AudioNodes. | Web Audio Render-Thread | Web Audio API |
| [`AnimationWorklet`](/de/docs/Web/API/AnimationWorklet) | Für die Erstellung von scroll-verknüpften und anderen hochleistungsfähigen prozeduralen Animationen. | Kompositor-Thread | CSS-Animations-Worklet-API |
| [`LayoutWorklet`](/de/docs/Web/API/LayoutWorklet) | Zur Definition der Positionierung und Abmessungen von benutzerdefinierten Elementen. | CSS Layout API | |
| [`SharedStorageWorklet`](/de/docs/Web/API/SharedStorageWorklet) | Zum Ausführen privater Operationen auf plattformübergreifenden Daten, ohne das Risiko eines Datenlecks. | Haupt-Thread | Shared Storage API |
Hinweis:
Paint Worklets, definiert durch die CSS Painting API, sind keine Unterklassen von Worklet. Sie werden über ein reguläres Worklet-Objekt angesprochen, das mit CSS.paintWorklet erhalten wird.
Für 3D-Rendering mit WebGL verwenden Sie keine Worklets. Stattdessen schreiben Sie Vertex-Shader und Fragment-Shader mit GLSL-Code und diese Shader werden dann auf der Grafikkarte ausgeführt.
Instanzeigenschaften
Das Worklet-Interface definiert keine Eigenschaften.
Instanzmethoden
Worklet.addModule()-
Fügt das Skriptmodul an der angegebenen URL zum aktuellen Worklet hinzu.
Spezifikationen
| Spezifikation |
|---|
| HTML> # worklets-worklet> |
Browser-Kompatibilität
JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.
Siehe auch
- Houdini: Demystifying CSS auf Google Developers (2016)
- AudioWorklet :: What, Why, and How auf YouTube (2017)
- Enter AudioWorklet auf Google Developers (2017)
- Animation Worklet - HTTP203 Advent auf YouTube (2017)