jQuery--包裹节点(wrap()、wrapAll()、wrapInner()),取消包裹节点(unwrap())详解

包裹节点

所谓包裹节点,是指在现有节点的外围包裹一层其他元素标签,使当前节点称为新元素的子节点。jQuery提供了wrap()和wrapAll()等方法用于实现节点的包裹。

1. wrap()方法:
wrap()方法用于将所匹配的元素通过指定的HTML标签包裹起来,其语法格式如下:

$(selector).wrap(htnml)
$(selector).wrap(element)
  • $(selector):表示被包裹的匹配元素
  • html:表示用于包裹的html标签
  • element:表示用于包裹的DOM元素

示例:

$("#headerDiv").wrap("<b></b>");
$("#headerDiv").wrap($("span"));
$("#headerDiv").wrap(document.getElementById("mySpan"));

2. wrapAll()方法:
wrapAll()方法用于将所匹配的元素使用HTML标签整体包裹起来,其语法格式如下:

$(selector).wrapAll(html)
$(selector).wrapAll(element)
  • $(selector):表示被包裹的匹配元素
  • html:表示用于包裹的html标签
  • element:表示用于包裹的DOM元素

3. wrapInner()方法:
wrapInner()方法用于将所匹配元素的子内容(包含文本节点)使用HTML标签包裹起来。

$(selector).wrapInner(html)
$(selector).wrapInner(element)
  • $(selector):表示被包裹的匹配元素
  • html:表示用于包裹的html标签
  • element:表示用于包裹的DOM元素

示例:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript" src="../js/jquery-2.1.0.js" ></script>
	</head>
	<body>
		<div id="headerDiv">
			<a href="#">影视</a>
			<a href="#">购物</a>
		</div>
		<div id="menuDiv">
			<a href="#">喜好推荐</a>
			<a href="#">热门推荐</a>
		</div>
		<div id="footerDiv">
			<a href="#">影视频道</a>
			<a href="#">购物频道</a>
		</div>
		<script type="text/javascript">
			$(function(){
				$("#headerDiv a").wrap("<b></b>");
				$("#headerDiv a").wrapAll("<b></b>");
				$("#headerDiv a").wrapInner("<b></b>");
			});
		</script>
	</body>
</html>

在这里插入图片描述

4. unwrap()方法:
unwrap()方法用于删除所匹配元素的父元素,能够快速取消wrap()方法所产生的效果。

示例:取消节点包裹

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript" src="../js/jquery-2.1.0.js" ></script>
	</head>
	<body>
		<div id="advDiv">
			<a href="#"><b>影视频道</b></a>
			<a href="#"><b>购物频道</b></a>
		</div>
		<script type="text/javascript">
			$(function(){
				$("#advDiv b").unwrap();
			});
		</script>
	</body>
</html>

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值