Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

HighlightRegistry

Baseline 2025 *
Newly available

Since ⁨June 2025⁩, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

* Some parts of this feature may have varying levels of support.

Die HighlightRegistry-Schnittstelle der CSS Custom Highlight API wird verwendet, um Highlight-Objekte zu registrieren, die mit der API gestylt werden sollen. Sie wird über CSS.highlights aufgerufen.

Eine Instanz von HighlightRegistry ist ein objektähnliches Map-Objekt, bei dem jeder Schlüssel der Namens-String für ein benutzerdefiniertes Highlight ist und der entsprechende Wert das zugeordnete Highlight-Objekt.

Instanzeigenschaften

Die HighlightRegistry-Schnittstelle erbt keine Eigenschaften.

HighlightRegistry.size Schreibgeschützt

Gibt die Anzahl der derzeit registrierten Highlight-Objekte zurück.

Instanzmethoden

Die HighlightRegistry-Schnittstelle erbt keine Methoden.

HighlightRegistry.clear()

Entfernt alle Highlight-Objekte aus dem Register.

HighlightRegistry.delete()

Entfernt das benannte Highlight-Objekt aus dem Register.

HighlightRegistry.entries()

Gibt ein neues Iterator-Objekt zurück, das jedes Highlight-Objekt im Register in Einfügereihenfolge enthält.

HighlightRegistry.forEach()

Ruft den angegebenen Rückruf einmal für jedes Highlight-Objekt im Register in Einfügereihenfolge auf.

HighlightRegistry.get()

Ruft das benannte Highlight-Objekt aus dem Register ab.

HighlightRegistry.has()

Gibt einen booleschen Wert zurück, der angibt, ob ein Highlight-Objekt im Register vorhanden ist oder nicht.

HighlightRegistry.highlightsFromPoint() Experimentell

Gibt ein Array von Objekten zurück, die die benutzerdefinierten Highlights darstellen, die an einem bestimmten Punkt innerhalb des Viewports angewendet werden.

HighlightRegistry.keys()

Ein Alias für HighlightRegistry.values().

HighlightRegistry.set()

Fügt das angegebene Highlight-Objekt mit dem angegebenen Namen dem Register hinzu oder aktualisiert das benannte Highlight-Objekt, falls es bereits im Register existiert.

HighlightRegistry.values()

Gibt ein neues Iterator-Objekt zurück, das die Highlight-Objekte im Register in Einfügereihenfolge ausgibt.

Beispiele

Ein Highlight registrieren

Das folgende Beispiel demonstriert, wie man Bereiche erstellt, ein neues Highlight-Objekt für sie instanziiert und das Highlight mithilfe der HighlightRegistry registriert, um es auf der Seite zu stylen:

HTML

html
<p id="foo">CSS Custom Highlight API</p>

CSS

css
::highlight(my-custom-highlight) {
  background-color: peachpuff;
}

JavaScript

js
const text = document.getElementById("foo").firstChild;

if (!CSS.highlights) {
  text.textContent =
    "The CSS Custom Highlight API is not supported in this browser!";
}

// Create a couple of ranges.
const range1 = new Range();
range1.setStart(text, 0);
range1.setEnd(text, 3);

const range2 = new Range();
range2.setStart(text, 21);
range2.setEnd(text, 24);

// Create a custom highlight for these ranges.
const highlight = new Highlight(range1, range2);

// Register the ranges in the HighlightRegistry.
CSS.highlights.set("my-custom-highlight", highlight);

Ergebnis

Spezifikationen

Specification
CSS Custom Highlight API Module Level 1
# highlight-registry

Browser-Kompatibilität

Siehe auch