私は次のJavaScriptを持っています:
jQuery.fn.outerHTML = function(s) {
return s
? this.before(s).remove()
: jQuery("<p>").append(this.eq(0).clone()).html();
};
$(function() {
var parentContainer = $("<ul><ul>");
var textContainer = $("<li></li>");
var textInput = $("<textarea rows=10 cols=10></textarea>");
textContainer.append(textInput);
parentContainer.append(textContainer);
alert(parentContainer.outerHTML());
});
アラートには次のコードが表示されます。
<ul><ul></ul><li><textarea rows="10" cols="10"></textarea></li></ul>
私が理解していることから、li
要素を最初の要素にネストしul
ていますが、最初のラッパーのコピーが含まれています<ul></ul>
。
誰もがなぜこれが起こるのか理解していますか?