本文實(shí)例講述了JQuery刪除DOM節(jié)點(diǎn)的方法。分享給大家供大家參考。具體分析如下:
如果文檔中某一個(gè)元素多余,那么應(yīng)將其刪除。JQuery提供了兩種刪除節(jié)點(diǎn)的方法,即remove()和empty()。
HTML DOM結(jié)構(gòu)如下:
<p class="nm_p" title="歡迎訪問(wèn)武林網(wǎng)" >歡迎訪問(wèn)武林網(wǎng)</p><ul class="nm_ul"> <li title='PHP編程'>簡(jiǎn)單易懂的PHP編程</li> <li title='C編程'>簡(jiǎn)單易懂的C編程</li> <li title='JavaScript編程'>簡(jiǎn)單易懂的JavaScript編程</li> <li title='JQuery'>簡(jiǎn)單易懂的JQuery編程</li></ul>
remove()方法
作用是從DOM中刪除所有匹配的元素,傳入的參數(shù)用于根據(jù)JQuery表達(dá)式來(lái)篩選元素。
例如刪除<ul>節(jié)點(diǎn)中的第2個(gè)<li>元素節(jié)點(diǎn),JQuery代碼如下:
$(".nm_ul li:eq(1)").remove();// 獲取第二個(gè)<li>元素節(jié)點(diǎn)后,將它從網(wǎng)頁(yè)中刪除運(yùn)行代碼后效果將刪掉第二個(gè)節(jié)點(diǎn)。
當(dāng)某個(gè)節(jié)點(diǎn)用remove()方法刪除后,該節(jié)點(diǎn)所包含的所有后代節(jié)點(diǎn)將同時(shí)被刪除。這個(gè)方法的返回值是一個(gè)指向已被刪除的節(jié)點(diǎn)的引用,因此可以在以后再使用這些元素。下面的JQuery代碼說(shuō)明元素用remove()方法刪除后,還是可以繼續(xù)使用的。
var $li = $("nm_ul li:eq(1)").remove();// 獲取第二個(gè)<li>元素節(jié)點(diǎn)后,將它從網(wǎng)頁(yè)中刪除。 $li.appendTo("nm_ul");// 把剛才刪除的又重新添加到<ul>元素里 //所以,刪除只是從網(wǎng)頁(yè)中刪除,在jQuery對(duì)象中,這個(gè)元素還是存在的,我們可以重新獲取它 可以直接使用appendTo()方法的特性來(lái)簡(jiǎn)化以上代碼,JQuery代碼如下:
$("nm_ul li:eq(1)").appendTo("nm_ul"); //appendTo()方法也可以用來(lái)移動(dòng)元素 //移動(dòng)元素時(shí)首先從文檔上刪除此元素,然后將該元素插入得到文檔中的指定節(jié)點(diǎn)另外remove()方法也可以通過(guò)傳遞參數(shù)來(lái)選擇性地刪除元素,JQuery代碼如下:
// 把<li>元素中屬性title不等于"菠蘿"的<li>元素刪除$("nm_ul li").remove("li[title!=JQuery]"); empty()方法
嚴(yán)格來(lái)講,empty()方法并不是刪除節(jié)點(diǎn),而是清空節(jié)點(diǎn),它能清空元素中的所有后代節(jié)點(diǎn)。JQuery代碼如下:
$("nm_ul li:eq(1)").empty();// 找到第二個(gè)<li>元素節(jié)點(diǎn)后,清空此元素里的內(nèi)容當(dāng)運(yùn)行代碼后,第2個(gè)<li>元素的內(nèi)容被清空了,只剩下<li>標(biāo)簽?zāi)J(rèn)的符號(hào)“.”。
希望本文所述對(duì)大家的jQuery程序設(shè)計(jì)有所幫助。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注