Müssen Sie zwischen einem leeren und einem sich selbst schließenden Element unterscheiden? Wenn nicht, können Sie Folgendes verwenden:
%Vor%Wenn Sie jedoch darüber sprechen, ob ein HTML-Tag leer sein soll oder nicht, können Sie das nicht programmatisch tun, da Sie nicht daran gehindert werden, ungültiges HTML zu erstellen, und Sie es gegen eine DTD validieren müssen finde es heraus.
jQuery verwendet diese Liste intern:
%Vor%Sie können dasselbe tun:
%Vor% Sie brauchen einen kleinen Hintergrund. Das HTML-Markup, das über den Draht gesendet wird, wird vom Browser in eine DOM-Struktur geparst. An diesem Punkt ist das ursprüngliche Markup verschwunden, hat seinen Zweck erfüllt und existiert nicht mehr. Wenn Sie innerHTML
für ein Element verwenden, ist das nicht das literale HTML, das das Element generiert hat, sondern die Serialisierung des DOM-Unterbaums durch den Browser.
Der Punkt ist, es gibt keinen Unterschied zwischen <div />
und <div></div>
. Also schau nur ob es Kinder hat. Ist dies nicht der Fall, hat das Element eine mögliche XHTML-Darstellung, die ein selbst schließendes Tag verwendet.
oder wie Cletus sagt:
%Vor% Sie könnten den .html()
Accessor überprüfen, um zu sehen, ob er eine leere Zeichenfolge zurückgibt. Obwohl dies auf <p></p>
wahr zurückgibt, würde ich jedoch für alle Absichten und Zwecke Bilder erstellen, die als selbstschließendes Tag behandelt werden könnten.
Tags und Links jquery