Sanitizer: Methode removeAttribute()
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Die removeAttribute()-Methode des Sanitizer-Interfaces legt fest, dass ein Attribut bei der Verwendung des Sanitizers von allen Elementen entfernt werden soll.
Die Methode kann sowohl mit einer Zulassungskonfiguration als auch mit einer Entfernungskonfiguration verwendet werden. Bei Verwendung mit einer Entfernungskonfiguration wird das angegebene Attribut dem removeAttributes-Array hinzugefügt. Bei Verwendung mit einer Zulassungskonfiguration wird das Attribut aus dem attributes-Array entfernt (falls vorhanden).
Beachten Sie, dass zum Zulassen/Verweigern von Attributen nur bei bestimmten Elementen die Methode Sanitizer.allowElement() verwendet werden soll.
Syntax
removeAttribute(attribute)
Parameter
attribute-
Ein String, der den Namen des Attributs angibt, das global auf Elementen abgelehnt werden soll, oder ein Objekt mit den folgenden Eigenschaften:
name-
Ein String, der den Namen des Attributs enthält.
namespaceOptional-
Ein String, der den Namespace des Attributs enthält, der standardmäßig auf
nullgesetzt ist.
Rückgabewert
true, wenn die Operation die Konfiguration geändert hat, um das Attribut zu verweigern, und false, wenn das Attribut bereits verweigert wurde.
Beachten Sie, dass false zurückgegeben werden könnte, wenn die interne Konfiguration:
- ein
removeAttributes-Array definiert, das das angegebene Attribut bereits enthält (und daher schon gefiltert ist) - stattdessen ein
attributes-Array definiert, das das Attribut bereits ausschließt (und daher schon verweigert wird)
Beispiele
>Anleitung zum Verweigern spezifischer Attribute
Dieses Beispiel zeigt, wie mit removeAttribute() angegeben werden kann, dass ein Attribut von Elementen entfernt werden soll.
JavaScript
Der Code erstellt zunächst ein neues Sanitizer-Objekt, das anfangs keine Attribute oder Elemente angibt. Dann rufen wir removeAttribute() mit den Attributen title und mathcolor auf.
// Create sanitizer that allows
const sanitizer = new Sanitizer({
removeAttributes: [],
});
// Remove the title attribute
sanitizer.removeAttribute("title");
// Remove the mathcolor attribute
sanitizer.removeAttribute("mathcolor");
// Log the sanitizer configuration
let sanitizerConfig = sanitizer.get();
log(JSON.stringify(sanitizerConfig, null, 2));
Ergebnisse
Die endgültige Konfiguration wird unten protokolliert. Beachten Sie, wie beide Attribute nun zur removeAttributes-Liste hinzugefügt wurden (diese Attribute werden entfernt, wenn sie bei der Verwendung des Sanitizers auf Elementen vorhanden sind).
Spezifikationen
| Specification |
|---|
| HTML Sanitizer API> # dom-sanitizer-removeattribute> |