Sanitizer: Methode removeElement()

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Die removeElement()-Methode der Sanitizer-Schnittstelle legt ein Element als nicht erlaubt fest — dieses wird beim Einsatz des Sanitizers aus der Eingabe entfernt.

Das angegebene Element wird der Liste von removeElements in der Konfiguration dieses Sanitizers hinzugefügt. Das Element wird aus den Listen elements oder replaceWithChildrenElements entfernt, falls es dort vorhanden ist.

Syntax

js
removeElement(element)

Parameter

element

Ein String, der den Namen des zu verbietenden Elements angibt, oder ein Objekt mit den folgenden Eigenschaften:

name

Ein String, der den Namen des Elements enthält.

namespace Optional

Ein String, der den Namensraum des Elements enthält. Der Standard-Namensraum ist "http://www.w3.org/1999/xhtml".

Rückgabewert

Keiner (undefined).

Beispiele

Anleitung zum Verbieten von Elementen

Dieses Beispiel zeigt, wie removeElement() verwendet wird, um ein Element als "verboten" zu markieren.

JavaScript

Der Code erstellt zuerst ein neues Sanitizer-Objekt, das zunächst <div>- und <script>-Elemente zulässt und <span>-Elemente durch ihre Kindelemente ersetzt.

Anschließend ruft der Code removeElement() auf, um <p>, <script>- und <span>-Elemente zur removeElements-Liste in der Konfiguration hinzuzufügen. Beachten Sie, dass das Hinzufügen von <script> und <span> die Elemente aus ihren ursprünglichen Listen entfernt.

js
// Create sanitizer using SanitizerConfig
const sanitizer = new Sanitizer({
  elements: ["div", "script"],
  replaceWithChildrenElements: ["span"],
});

// Disallow the <p> element
sanitizer.removeElement("p");

// Disallow the <script> element
sanitizer.removeElement("script");
// Disallow the <span> element
sanitizer.removeElement("span");

// Log the sanitizer configuration
let sanitizerConfig = sanitizer.get();
log(JSON.stringify(sanitizerConfig, null, 2));

Hinweis: Diese Konfiguration dient nur zur Demonstration. Sanitizer-Konfigurationen sollten entweder nur die erlaubten Elemente (elements) oder nur die verbotenen Elemente (removeElements) enthalten, aber nicht beides. In diesem Fall ist nur das <div>-Element erlaubt und alle anderen Elemente werden aus der Eingabe entfernt: Die entfernten Elemente haben also keine Wirkung.

Ergebnisse

Die endgültige Konfiguration wird unten protokolliert.

Spezifikationen

Specification
HTML Sanitizer API
# dom-sanitizer-removeelement

Browser-Kompatibilität