jQuery this.html() undefined zurückgibt

Ich bin Neuformatierung einige wirklich schlechte HTML mit jQuery. Ich muss splice Geschwister <font> Elemente zusammen. Ich habe versucht, diesen code:

$('font+font').each(function() {
    this.html().appendTo( this.prev() );
    this.remove();
});

aber es gab mir diese Fehlermeldung: TypeError: 'undefined' is not a function (evaluating 'this.html()')


Hier ist ein Beispiel des HTML:

<font>This fragment </font><font>is actually one element.</font>


Update

Ich aktualisierte mein code mit $(this), aber es immer noch nicht funktioniert. Wenn ich diesen code ausführen

$('font+font').each(function() {
    $(this).html().appendTo( $(this).prev() );
    $(this).remove();
});

Bekomme ich diesen Fehler: TypeError: 'undefined' is not a function (evaluating '$(this).html().appendTo( $(this).prev() )')

<font> ist nicht HTML...
Daher "wirklich schlechtes HTML." Es ist markup aus der Mitte der 90er Jahre.
Oh sorry, habe ich übersehen, das Teil. Ja, ich habe zu tun, dass alle die Zeit mit viel viel hässlicher code. Alte E-Commerce-software mit datierten Vorlagen aus der spacer.gif Tabelle layout-Tage...
Ich empfehle kopieren der Elemente selbst statt. $("font + font").each(function() { $(this).contents().appendTo($(this).prev()).end().remove(); });.
sehr schön, aber Sie brauchen, um zu verwenden .end().end() im Ort .end().

InformationsquelleAutor Brandon Lebedev | 2012-02-09

Schreibe einen Kommentar