我有一個示例代碼:不能在jQuery中使用append和appendChild?
jQuery(document.body).append('<div id="wrapper-1"></div>').appendChild('<div id="wrapper-2"></div>');
如何得到這樣的結果,如何想法?
<div id="wrapper-1">
<div id="wrapper-2"></div>
</div>
我有一個示例代碼:不能在jQuery中使用append和appendChild?
jQuery(document.body).append('<div id="wrapper-1"></div>').appendChild('<div id="wrapper-2"></div>');
如何得到這樣的結果,如何想法?
<div id="wrapper-1">
<div id="wrapper-2"></div>
</div>
,否則你可以試試這個:
$('.body').append('<div id="wrapper-1"></div>');
$('<div id="wrapper-2"></div>').appendTo('#wrapper-1');
這是怎麼回事?
jQuery(document.body).append('<div id="wrapper-1"><div id="wrapper-2"></div></div>');
瀏覽器會明白這是一個孩子
jQuery('body').append('<div id="wrapper-1"><div id="wrapper-2"></div></div>');
append()
是一個jQuery方法,而appendChild()
是一個DOM元素的方法。
即您需要在純DOM元素上調用appendChild()
。以下應該工作。
jQuery(document.body).append('<div id="wrapper-1"></div>')[0].appendChild('<div id="wrapper-2"></div>');
這裏有一個辦法:
jQuery(document.body).append('<div id="wrapper-1"></div>').children().append('<div id="wrapper-2"></div>');
的appendChild()是一個JavaScript原生功能,同時追加()是一個jQuery方法。因此,鏈條中的兩個都不會像你期望的那樣工作。
請按照Maxim的建議嘗試此操作。
jQuery('body').append('<div id="wrapper-1"><div id="wrapper-2"></div></div>');
試試這個:在Firebug火狐
var $div1 = $("<div/>");
$div1.attr("id", "wrapper-1");
var $div2 = $("<div/>");
$div2.attr("id", "wrapper-2");
$div1.append($div2);
<div id="wrapper-1">
<div id="wrapper-2"></div>
</div>
錯誤:NS_ERROR_XPC_BAD_CONVERT_JS:無法轉換的JavaScript參數arg 0 nsIDOMHTMLBodyElement.appendChild] –