您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關jQuery如何修改DOM結構_動力節(jié)點,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
直接使用瀏覽器提供的API對DOM結構進行修改,不但代碼復雜,而且要針對瀏覽器寫不同的代碼。
有了jQuery,我們就專注于操作jQuery對象本身,底層的DOM操作由jQuery完成就可以了,這樣一來,修改DOM也大大簡化了。
添加DOM
要添加新的DOM節(jié)點,除了通過jQuery的html()這種暴力方法外,還可以用append()方法,例如:
<div id="test-div"> <ul> <li><span>JavaScript</span></li> <li><span>Python</span></li> <li><span>Swift</span></li> </ul> </div>
如何向列表新增一個語言?首先要拿到<ul>節(jié)點:
var ul = $('#test-div>ul');
然后,調用append()傳入HTML片段:
ul.append('<li><span>Haskell</span></li>');
除了接受字符串,append()還可以傳入原始的DOM對象,jQuery對象和函數(shù)對象:
// 創(chuàng)建DOM對象: var ps = document.createElement('li'); ps.innerHTML = '<span>Pascal</span>'; // 添加DOM對象: ul.append(ps); // 添加jQuery對象: ul.append($('#scheme')); // 添加函數(shù)對象: ul.append(function (index, html) { return '<li><span>Language - ' + index + '</span></li>'; });
傳入函數(shù)時,要求返回一個字符串、DOM對象或者jQuery對象。因為jQuery的append()可能作用于一組DOM節(jié)點,只有傳入函數(shù)才能針對每個DOM生成不同的子節(jié)點。
append()把DOM添加到最后,prepend()則把DOM添加到最前。
另外注意,如果要添加的DOM節(jié)點已經存在于HTML文檔中,它會首先從文檔移除,然后再添加,也就是說,用append(),你可以移動一個DOM節(jié)點。
如果要把新節(jié)點插入到指定位置,例如,JavaScript和Python之間,那么,可以先定位到JavaScript,然后用after()方法:
var js = $('#test-div>ul>li:first-child'); js.after('<li><span>Lua</span></li>');
也就是說,同級節(jié)點可以用after()或者before()方法。
刪除節(jié)點
要刪除DOM節(jié)點,拿到jQuery對象后直接調用remove()方法就可以了。如果jQuery對象包含若干DOM節(jié)點,實際上可以一次刪除多個DOM節(jié)點:
var li = $('#test-div>ul>li'); li.remove(); // 所有<li>全被刪除
關于“jQuery如何修改DOM結構_動力節(jié)點”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。