JQuery erkennt, ob ein Tag sich selbst schließt

8

Gibt es eine Möglichkeit festzustellen, ob ein Tag mit JQuery wie ein Image-Tag selbst abgeschlossen wird? Etwas Dynamisches, nicht nur ein Image-Tag.

%Vor%     
Hatchware 18.02.2010, 21:41
quelle

4 Antworten

2

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.

    
cletus 18.02.2010, 21:45
quelle
10

jQuery verwendet diese Liste intern:

%Vor%

Sie können dasselbe tun:

%Vor%     
Nick Craver 18.02.2010 21:46
quelle
3

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.

%Vor%

oder wie Cletus sagt:

%Vor%     
jpsimons 18.02.2010 22:00
quelle
0

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.

    
Spencer Ruport 18.02.2010 21:46
quelle

Tags und Links