前言:一、創(chuàng)建新元素 1、使用$函數(shù)創(chuàng)建新元素 var $newElement=$(p段落/p);//創(chuàng)建元素,返回jQuery對(duì)象 說(shuō)明: 1)創(chuàng)建的新元素不會(huì)自動(dòng)的把新元素插入到頁(yè)面中,我們還需要明確的指定其插入到頁(yè)面中的位置(比如使用append方法,指定 其插入位置為某個(gè)元素的最后一個(gè)子元素) 2)返回的jQuery對(duì)象中只包含html片段最頂層(外層)的元素,對(duì)于后代元素我們可以像處理頁(yè)面中已有元素一樣,
一、創(chuàng)建新元素
1、使用$函數(shù)創(chuàng)建新元素
var $newElement=$('<p>段落</p>');//創(chuàng)建元素,返回jQuery對(duì)象
說(shuō)明:
1)創(chuàng)建的新元素不會(huì)自動(dòng)的把新元素插入到頁(yè)面中,我們還需要明確的指定其插入到頁(yè)面中的位置(比如使用append方法,指定
其插入位置為某個(gè)元素的最后一個(gè)子元素)
2)返回的jQuery對(duì)象中只包含html片段最頂層(外層)的元素,對(duì)于后代元素我們可以像處理頁(yè)面中已有元素一樣,使用
children或find方法訪問(wèn)
3)既然可以直接apend等方法插入html元素為何還要有這個(gè)創(chuàng)建新元素的功能?
使用$函數(shù)創(chuàng)建元素,是返回的是jQuery對(duì)象,我們可以使用jQuery對(duì)象里面的方法在創(chuàng)建的這個(gè)元素被插入到頁(yè)面之前進(jìn)行
各種操作比如進(jìn)行綁定事件處理函數(shù)!
2、克隆已有的元素(通過(guò)克隆已有元素生成新元素)
使用clone方法以已有的元素(或者新創(chuàng)建的元素)為模子生成新元素
clone方法會(huì)復(fù)制jQuery對(duì)象內(nèi)包含后代元素在內(nèi)的所有元素
參數(shù):
兩個(gè)參數(shù)都是可選
第一個(gè)參數(shù):
一個(gè)布爾值(true 或者 false)指示目標(biāo)元素的事件處理函數(shù)以及關(guān)聯(lián)數(shù)據(jù)是否會(huì)被復(fù)制
第二個(gè)參數(shù)(默認(rèn)情況下與第一個(gè)參數(shù)一致):
一個(gè)布爾值,指示是否對(duì)克隆的元素的所有子元素的事件處理程序以及關(guān)聯(lián)數(shù)據(jù)進(jìn)行復(fù)制
二、添加子元素
1、append方法
在每個(gè)匹配元素內(nèi)的 末尾處 插入?yún)?shù)內(nèi)容
參數(shù)類型說(shuō)明:
1)普通字符串(可包含各種html標(biāo)簽)
$('body').append('html字符串');
2)jQuery對(duì)象
①使用$函數(shù)創(chuàng)建的新元素(jQuery對(duì)象)
②使用$函數(shù)獲取頁(yè)面中已經(jīng)有的元素(jQuery對(duì)象)
此時(shí)會(huì)將已有的元素移動(dòng)到目標(biāo)元素內(nèi)
③使用clone方法克隆頁(yè)面中已經(jīng)有的元素(jQuery對(duì)象)
3)html元素對(duì)象、html元素對(duì)象數(shù)組
====以上類型的參數(shù)可傳入多個(gè),每個(gè)參數(shù)都會(huì)被插入到匹配元素!===
4)函數(shù)
有多少個(gè)匹配元素,這個(gè)函數(shù)就會(huì)執(zhí)行多少次!
函數(shù)可以接受到兩個(gè)參數(shù):第一個(gè)是當(dāng)前元素的序號(hào)、第二個(gè)是當(dāng)前元素內(nèi)的html
函數(shù)內(nèi)部this代表當(dāng)前的html元素對(duì)象
return 的數(shù)據(jù)就是插入的內(nèi)容(可以為html元素,也可以是jQuery對(duì)象)
2、prepend方法
將參數(shù)內(nèi)容插入到每個(gè)匹配元素內(nèi)部的 最前面
使用方法及參數(shù)與append相同
3、appendTo方法
將匹配的元素插入到目標(biāo)元素內(nèi)部的最后面(同append)
與append區(qū)別:
使用時(shí)目標(biāo)元素與插入內(nèi)容的位置 顛倒
創(chuàng)建新元素返回的jQuery對(duì)象與
選擇頁(yè)面中已有元素返回的jQuery對(duì)象都可調(diào)用此方法(選擇頁(yè)面中已有元素表示將已有的元素移動(dòng)到目標(biāo)元素內(nèi))!
參數(shù)(表示要插入元素的目標(biāo)位置):
Selector或者jQuery對(duì)象或者h(yuǎn)tml元素對(duì)象/html元素對(duì)象數(shù)組
4、prependTo方法
將匹配的元素插入到目標(biāo)元素內(nèi)部的最前面(同prepend)
與prepend區(qū)別:
同上!
參數(shù)(表示要插入元素的目標(biāo)位置):
同上!
三、包裹元素
1、wrap方法
在每個(gè)匹配的元素外層包上一個(gè)html元素
參數(shù)類型說(shuō)明:
1)html字符串
$('p').wrap('<div></div>');
傳入的html標(biāo)簽也可以是嵌套多層,但應(yīng)該只包含一個(gè)核心的元素
2)選擇器
傳入選擇器則是將 選中的元素(及其后代) 復(fù)制一份用來(lái) 包裹對(duì)應(yīng)的元素
3)jQuery對(duì)象
可以使用新創(chuàng)建的元素對(duì)象或者使用選擇器獲取到的元素對(duì)象
4)html元素對(duì)象
5)函數(shù)
有多少個(gè)匹配元素,這個(gè)函數(shù)就會(huì)執(zhí)行多少次!
函數(shù)接收一個(gè)參數(shù)
當(dāng)前元素的序號(hào)
函數(shù)內(nèi)部this代表當(dāng)前的html元素對(duì)象
return用于包裹匹配元素的 HTML 內(nèi)容或 jQuery 對(duì)象
2、wrapAll方法
在所有匹配元素外面包一層HTML結(jié)構(gòu)
參數(shù)同上,但是我們一般不會(huì)傳入函數(shù)!
注意:如果所匹配的元素沒(méi)有共同的父元素時(shí)的情況
3、wrapInner方法
在匹配元素里的內(nèi)容外包一層結(jié)構(gòu)
參數(shù)同上
四、插入兄弟元素
1、after方法
在匹配元素集合中的每個(gè)元素的 后面 插入?yún)?shù)所指定的內(nèi)容,作為其兄弟節(jié)點(diǎn)
參數(shù)類型說(shuō)明:
1)普通字符串(可包含各種html標(biāo)簽)
$('div').after('html字符串');
2)jQuery對(duì)象
①使用$函數(shù)創(chuàng)建的新元素(jQuery對(duì)象)
②使用$函數(shù)獲取頁(yè)面中已經(jīng)有的元素(jQuery對(duì)象)
此時(shí)會(huì)將已有的元素移動(dòng)到目標(biāo)元素的后面
③使用clone方法克隆頁(yè)面中已經(jīng)有的元素(jQuery對(duì)象)
3)html元素對(duì)象、html元素對(duì)象數(shù)組
====以上類型的參數(shù)可傳入多個(gè),每個(gè)參數(shù)都會(huì)被插入到匹配元素的后面作為其兄弟節(jié)點(diǎn)!===
4)函數(shù)
有多少個(gè)匹配元素,這個(gè)函數(shù)就會(huì)執(zhí)行多少次!
函數(shù)可以接受到兩個(gè)參數(shù):第一個(gè)是當(dāng)前元素的序號(hào)、第二個(gè)是當(dāng)前元素內(nèi)的html
函數(shù)內(nèi)部this代表當(dāng)前的html元素對(duì)象
return 的數(shù)據(jù)就是插入的內(nèi)容(可以為html元素,也可以是jQuery對(duì)象)
2、before方法
在匹配元素的前面插入內(nèi)容,作為其兄弟節(jié)點(diǎn)
參數(shù)類型說(shuō)明:
同上
3、insertAfter方法
在目標(biāo)元素后面插入集合中每個(gè)匹配的元素,同after方法(插入的元素作為目標(biāo)元素的兄弟元素)
與after區(qū)別:
使用時(shí)目標(biāo)元素與插入內(nèi)容的位置 顛倒
創(chuàng)建新元素返回的jQuery對(duì)象與
選擇頁(yè)面中已有元素返回的jQuery對(duì)象都可調(diào)用此方法(選擇頁(yè)面中已有元素表示將已有的元素移動(dòng)到目標(biāo)元素后)!
參數(shù)(表示要插入元素的目標(biāo)位置):
Selector或者jQuery對(duì)象或者h(yuǎn)tml元素對(duì)象/html元素對(duì)象數(shù)組
4、insertBefore方法
在目標(biāo)元素前面插入內(nèi)容(同before)
與before區(qū)別:
同上!
參數(shù)(表示要插入元素的目標(biāo)位置):
同上!
五、替換元素
1、replaceWith方法
用提供的內(nèi)容替換集合中所有匹配的元素并且返回被替換元素的集合
參數(shù)類型說(shuō)明:
1)普通字符串(可包含各種html標(biāo)簽)
2)jQuery對(duì)象
①使用$函數(shù)創(chuàng)建的新元素(jQuery對(duì)象)
②使用$函數(shù)獲取頁(yè)面中已經(jīng)有的元素(jQuery對(duì)象)
此時(shí)會(huì)將已有的元素移動(dòng)到新位置
③使用clone方法克隆頁(yè)面中已經(jīng)有的元素(jQuery對(duì)象)
3)html元素對(duì)象、html元素對(duì)象數(shù)組
4)函數(shù)
有多少個(gè)匹配元素,這個(gè)函數(shù)就會(huì)執(zhí)行多少次!
函數(shù)可以接受到兩個(gè)參數(shù):第一個(gè)是當(dāng)前元素的序號(hào)、第二個(gè)是當(dāng)前元素內(nèi)的html
函數(shù)內(nèi)部this代表當(dāng)前的html元素對(duì)象
return 的數(shù)據(jù)就是替換成的內(nèi)容(可以為html元素,也可以是jQuery對(duì)象)
2、replaceAll方法
用集合的匹配元素替換每個(gè)目標(biāo)元素(同replaceWith)
與replaceWitch區(qū)別:
目標(biāo)和源相反
創(chuàng)建新元素返回的jQuery對(duì)象與
選擇頁(yè)面中已有元素返回的jQuery對(duì)象都可調(diào)用此方法(選擇頁(yè)面中已有元素表示將已有的元素移動(dòng)至目標(biāo)元素處)!
參數(shù)(表示要插入元素的目標(biāo)位置):
Selector或者jQuery對(duì)象或者h(yuǎn)tml元素對(duì)象/html元素對(duì)象數(shù)組
六、刪除元素
1、detach()方法
從頁(yè)面中去除所匹配的元素,返回調(diào)用該元素jQuery對(duì)象
參數(shù)說(shuō)明:
(可選)一個(gè)選擇器將需要移除的元素從匹配的元素中過(guò)濾出來(lái)
2、empty()方法
從頁(yè)面中移除匹配元素的所有后代元素(包括文本)
3、remove()方法
將匹配元素集合從頁(yè)面中刪除,返回調(diào)用該元素jQuery對(duì)象(同時(shí)移除元素上的事件處理函數(shù)及關(guān)聯(lián)數(shù)據(jù))
如果刪除的元素,不需要?jiǎng)h除關(guān)聯(lián)數(shù)據(jù)和事件,請(qǐng)使用detach()
參數(shù)說(shuō)明:
(可選)一個(gè)選擇器用來(lái)過(guò)濾將被移除的匹配元素集合
4、unwrap()方法
將匹配元素集合的父級(jí)元素刪除,保留自身(和兄弟元素,如果存在)在原來(lái)的位置
轉(zhuǎn)載請(qǐng)注明出處及附上該鏈接:http://ebqao.cn/web/194.html
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。
上一篇:<<jquery選擇元素 下一篇:Sublime Text快捷鍵大全>>