jQuery的append()方法是一個非常常用的方法,它允許您將 HTML 內容插入到現(xiàn)有元素的末尾。如果您熟悉jQuery,那么您一定已經在項目中使用過這個方法,但是如果您想更深入地了解它的原理,那么您就需要了解它的源代碼。
jQuery.fn.extend({ append: function () { return domManip(this, arguments, function (elem) { if (this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9) { this.appendChild(elem); } }); } });
源代碼非常簡潔,只有幾行。其中,使用了jQuery的extend()方法將 append() 方法添加到jQuery對象上。然后,它調用一個名為domManip()的方法,該方法接收了三個參數(shù):當前 jQuery 對象、要添加的HTML內容、以及一個回調函數(shù)。
在回調函數(shù)中,如果當前元素是文檔元素、文檔片段或文檔本身(即可被添加元素的節(jié)點),則將要添加的元素添加到當前元素的末尾。
通過這樣的方式,jQuery的append()方法成功地將HTML內容添加到文檔中,并且允許您通過回調函數(shù)執(zhí)行額外的處理。如果您對此方法的使用有更深入的了解,您還可以使用其他定義在domManip()方法內部的回調函數(shù),例如before()、after()等等,這些方法都可以方便地添加、修改或刪除HTML內容。