jQuery DOM操作包裹wrap()
如果要將元素用其他元素包裹起來(lái),也就是給它增加一個(gè)父元素,針對(duì)這樣的處理,JQuery提供了一個(gè)wrap方法
.wrap( wrappingElement ):在集合中匹配的每個(gè)元素周圍包裹一個(gè)HTML結(jié)構(gòu)
比如下面我們來(lái)寫一個(gè)例子
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script> </head> <body> <p>php 中文網(wǎng)</p> <script> $("p").wrap("<div></div>"); </script> </body> </html>
小伙伴們看如上代碼,這樣我們就給p 標(biāo)簽增加了一個(gè)父節(jié)點(diǎn)? 小伙伴們把代碼復(fù)制到本地運(yùn)行,按F12 可以查看
wrap( function ) :一個(gè)回調(diào)函數(shù),返回用于包裹匹配元素的 HTML 內(nèi)容或 jQuery 對(duì)象
使用后的效果與直接傳遞參數(shù)是一樣,只不過(guò)可以把代碼寫在函數(shù)體內(nèi)部,寫法不同而已
下面我們來(lái)看實(shí)例:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script> </head> <body> <p>php 中文網(wǎng)</p> <script> $('p').wrap(function(){ return '<div>'; }) </script> </body> </html>
小伙伴們可以運(yùn)行下第二種,其實(shí)和第一種的效果是一樣的,只是寫法不一樣而已
注意:wrap()函數(shù)可以接受任何字符串或?qū)ο?,可以傳遞給$()工廠函數(shù)來(lái)指定一個(gè)DOM結(jié)構(gòu)。這種結(jié)構(gòu)可以嵌套了好幾層深,但應(yīng)該只包含一個(gè)核心的元素。每個(gè)匹配的元素都會(huì)被這種結(jié)構(gòu)包裹。該方法返回原始的元素集,以便之后使用鏈?zhǔn)椒椒ā?/p>