Dokument: createElementNS() Methode

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

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

Erstellt ein Element mit dem angegebenen Namensraum-URI und qualifizierten Namen.

Um ein Element ohne Angabe eines Namensraum-URIs zu erstellen, verwenden Sie die createElement() Methode.

Syntax

js
createElementNS(namespaceURI, qualifiedName)
createElementNS(namespaceURI, qualifiedName, options)

Parameter

namespaceURI

Ein String, der den namespaceURI angibt, der mit dem Element verknüpft wird. Einige wichtige Namensraum-URIs sind:

HTML

http://www.w3.org/1999/xhtml

SVG

http://www.w3.org/2000/svg

MathML

http://www.w3.org/1998/Math/MathML

qualifiedName

Ein String, der den Typ des zu erstellenden Elements angibt. Die nodeName Eigenschaft des erstellten Elements wird mit dem Wert von qualifiedName initialisiert.

options Optional

Ein optionales ElementCreationOptions Objekt, das eine einzige Eigenschaft namens is enthält, deren Wert der Tag-Name für ein benutzerdefiniertes Element ist, das zuvor mittels customElements.define() definiert wurde. Aus Gründen der Abwärtskompatibilität erlauben einige Browser, hier einen String anstelle eines Objekts zu übergeben, wobei der Wert des Strings der Tag-Name des benutzerdefinierten Elements ist. Weitere Informationen zur Verwendung dieses Parameters finden Sie unter Erweitern von nativen HTML-Elementen.

Das neue Element erhält ein is Attribut, dessen Wert der Tag-Name des benutzerdefinierten Elements ist. Benutzerdefinierte Elemente sind ein experimentelles Feature, das nur in einigen Browsern verfügbar ist.

Rückgabewert

Das neue Element.

Ausnahmen

NamespaceError DOMException

Wird ausgelöst, wenn der namespaceURI Wert kein gültiger Namensraum-URI ist.

InvalidCharacterError DOMException

Wird ausgelöst, wenn der qualifiedName Wert kein gültiger XML-Name ist; zum Beispiel, wenn er mit einer Zahl, einem Bindestrich oder Punkt beginnt oder Zeichen enthält, die nicht alphanumerisch sind, keine Unterstriche, Bindestriche oder Punkte sind.

Beispiele

Dies erstellt ein neues <div> Element im XHTML Namensraum und fügt es dem vbox-Element hinzu. Obwohl dies kein äußerst nützliches XUL-Dokument ist, zeigt es dennoch die Verwendung von Elementen aus zwei verschiedenen Namensräumen innerhalb eines einzelnen Dokuments:

xml
<?xml version="1.0"?>
<page xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
      xmlns:html="http://www.w3.org/1999/xhtml"
      title="||Working with elements||"
      onload="init()">

<script><![CDATA[
let container;
let newDiv;
let textNode;

function init() {
  container = document.getElementById("ContainerBox");
  newDiv = document.createElementNS("http://www.w3.org/1999/xhtml", "div");
  textNode = document.createTextNode(
    "This is text that was constructed dynamically with createElementNS and createTextNode then inserted into the document using appendChild.",
  );
  newDiv.appendChild(textNode);
  container.appendChild(newDiv);
}
]]></script>

 <vbox id="ContainerBox" flex="1">
  <html:div>
   The script on this page will add dynamic content below:
  </html:div>
 </vbox>

</page>

Hinweis: Das oben gegebene Beispiel verwendet Inline-Skripte, was in XHTML-Dokumenten nicht empfohlen wird. Dieses spezielle Beispiel ist tatsächlich ein XUL-Dokument mit eingebettetem XHTML, dennoch gilt die Empfehlung.

Spezifikationen

Specification
DOM
# ref-for-dom-document-createelementns①

Browser-Kompatibilität

Siehe auch