Kompatibilitätstabellen und das Browser-Kompatibilitätsdaten-Repository (BCD)
MDN hat ein Standardformat für Tabellen, die die Kompatibilität von gemeinsam genutzten Technologien in allen Browsern veranschaulichen, wie z.B. DOM, HTML, CSS, JavaScript, SVG usw. Um diese Daten programmatisch in mehreren Projekten verfügbar zu machen, wird ein Node.js-Paket aus dem browser-compat-data-Repository erstellt und in npm veröffentlicht.
Um die Daten innerhalb dieser Tabellen zu ändern, finden Sie umfassende Dokumentation zusammen mit den neuesten Informationen zu Konventionen und JSON-Schemata, die zur Darstellung der Daten verwendet werden, im Contributing Guide des Repositories sowie im Datenleitfaden. Wenn Sie Fragen haben oder Probleme entdecken, können Sie gerne um Hilfe bitten.
Verwendung von BCD-Daten auf MDN-Seiten
Sobald die Daten im browser-compat-data-Repo enthalten sind, können Sie beginnen, dynamisch Kompatibilitäts- und Spezifikationstabellen basierend auf diesen Daten in MDN-Seiten einzubinden.
Um mit BCD-Daten auf MDN-Seiten zu beginnen, verwenden Sie die im BCD-Quelldatei angegebene Abfragezeichenfolge für die relevanten Daten, die Sie einbeziehen möchten. Zum Beispiel:
- Die Kompatibilitätsdaten von
AbortController
sind in api/AbortController.json definiert und können mitapi.AbortController
abgefragt werden. Content-Type
Die Kompatibilitätsdaten des HTTP-Headers sind in http/headers/content-type.json definiert und die Abfrage isthttp.headers.Content-Type
.- Die Kompatibilitätsdaten der
VRDisplay.capabilities
-Eigenschaft sind in api/VRDisplay.json definiert und ihre Abfrage istapi.VRDisplay.capabilities
.
Die Kompatibilitätsdaten-Abfrage sollte im Frontmatter der Seite im browser-compat
Schlüssel angegeben werden.
Zum Beispiel, AbortController
würde wie unten gezeigt hinzugefügt werden:
---
title: AbortController
slug: Web/API/AbortController
page-type: web-api-interface
browser-compat: api.AbortController
---
Die Kompatibilitäts- und Spezifikationstabellen, die dem Schlüssel entsprechen, werden dann automatisch anstelle der {{Compat}}
und {{Specifications}}
Makros in der Quelle gerendert.
Wenn auf derselben Seite mehrere Kompatibilitäts-/Spezifikationstabellen erforderlich sind, können Sie den Wert von browser-compat
als Array angeben. Zum Beispiel, für die Channel Messaging API würde dies wie unten gezeigt hinzugefügt werden:
---
title: Channel Messaging API
slug: Web/API/Channel_Messaging_API
page-type: web-api-overview
browser-compat:
- api.MessageChannel
- api.MessagePort
---
Die Makroaufrufe erzeugen die folgenden Tabellen (und den entsprechenden Satz von Hinweisen):
Beispiel für eine Kompatibilitätstabelle
BCD tables only load in the browser
Beispiele für Spezifikationstabellen
Specification |
---|
DOM Standard # interface-abortcontroller |