wrap(),wrapAll(),wrapInner()的区别
wrap从字面上理解就是包裹的意思,这三个函数也都是起到将内部节点进行包裹的作用,但是他们的各自的功能有又大不相同。
1. a.wrap(b)
这个函数的作用是用b将a进行包裹,其中a所选中的可以为多个,wrap()也会将这些被选中的节点各自都用b进行包裹。如下:
<div class = 'one'>
<p>111</p>
</div>
<p>222</p>
<div>333</div>
<p>121212</p>
<div>444</div>
<script>
var div = $('p');
div.wrap('<div class = "wrap"></div>');
</script>
这段代码将每个p节点都用class为wrap的节点进行包裹,html结构如下:
<div class = 'one'>
<div class = 'wrap'>
<p>111</p>
</div>
</div>
<div class="wrap">
<p>222</p>
</div>
<div>333</div>
<div class="wrap">
<p>121212</p>
</div>
<div>444</div>
可见每个p节点都被包裹,而且这些p节点都降了一级。包裹的元素占据了p之前的位置。
2. a.wrapAll(b)
这个函数的作用是将b所匹配到的节点统一到一起,使用一个a来包裹,因此a只包裹了一次。另外倘若b所匹配到的节点并没有紧挨在一起,那么这个函数会将其他的节点迁移到第一个节点所在的位置,使之与第一个节点成为兄弟节点,然后在进行包裹。
<div class = 'one'>
<p>111</p>
</div>
<p>222</p>
<div>333</div>
<div>
<p>121212</p>
</div>
<script>
var div = $('p');
div.wrapAll('<div class = "wrap"></div>');
</script>
这段代码是将所有的p节点使用div进行包裹,其结果如下:
<div class = 'one'>
<div class="wrap">
<p>111</p>
<p>222</p>
<p>121212</p>
</div>
</div>
<div>333</div>
<div>
</div>
可见无论其他的p标签在什么位置,都会被迁移到第一个p标签的位置。
3. a.wrapInner(b)
这个函数的作用是用b将a内部的内容进行包裹。不论是文本节点还是元素节点。
<div class = 'one'>
<p>111</p>
</div>
<script>
var div = $('.one');
div.wrapInner('<div class = "wrap"></div>');
</script>
这段代码是将class为one的div的内部内容进行包裹,其结果如下:
<div class = 'one'>
<div class="wrap">
<p>111</p>
</div>
</div>
wrap(),wrapAll(),wrapInner()的区别的更多相关文章
- jQuery wrap wrapAll wrapInner使用
jQuery wrap wrapAll wrapInner使用 <%@ page language="java" import="java.util.*" ...
- jQuery中 wrap() wrapAll() 与 wrapInner()的区别
今晚看书的时候发现jQuery有三个包裹节点的方法,百度了一下jQuery wrap() / wrapAll() / wrapInner(),果然搜索结果 W3School的文档说明是排第一的. 可是 ...
- 浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异
本文结合W3School的文档,分析了jQuery中 wrap() wrapAll() 与 wrapInner()的差异,并给出了图文对比教程,非常的简单实用,有需要的朋友可以参考下 今晚看书的时候发 ...
- jQuery中 wrap() wrapAll() 与 wrapInner()的差异
wrap() 方法把每个被选元素放置在指定的 HTML 内容或元素中.jQuery 文档操作 - wrapAll() 方法 wrapAll() 在指定的 HTML 内容或元素中放置所有被选的元素.jQ ...
- jquery基本操作笔记
来源于:http://www.cnblogs.com/webcome/p/5484005.html jq和js 可以共存,不能混用: 1 2 3 4 5 6 $('.box').css('backgr ...
- Jquery day02
jquery day01回顾 语法: $("选择器") , $(dom对象) , $("<div>") 选择器: 基本:#id.ele ...
- zepto源码--核心方法4(包装)--学习笔记
主要介绍一下wrap, wrapAll, wrapInner, unwrap方法. wrapAll 在所有匹配元素外面包一个单独的结构.结构可以是单个元素或 几个嵌套的元素,并且可以是html字符串或 ...
- jQuery学习笔记:整理一些常用的jQuery操作DOM事件
1.attr() .removeAttr() .attr() 方法可以传入一个名值对的参数,也可以传入一个包含2个以上名值对的对象参数,例如: .attr('src','images/a.jpg'); ...
- jQuery操作元素
通常,我们在创建元素时,会使用以下代码: var p = document.createElement("p"); p.innerText = "this is para ...
随机推荐
- 51NOD 2368 珂朵莉的旅行
>>这是原题传送门<< 答案参考来自 http://www.cnblogs.com/sugewud/p/9822933.html 思路:思维题OR规律题?个人没写出来,脑子里只 ...
- jQuery学习之------html()、text()和val()
jQuery学习之------html().text()和val() .html(),.text()和.val()的差异总结: (来源:慕课网) .html(),.text(),.val()三种方法 ...
- BNUOJ 5363 Machine Schedule
Machine Schedule Time Limit: 1000ms Memory Limit: 32768KB This problem will be judged on HDU. Origin ...
- Excel表格如何设置密码 Excel2003/2007/2010设置密码教程
http://www.wordlm.com/special/2/ 经常使用Excel表格制作报表和一些数据后,我们会给Excel表格设置密码,这样可以很有效的防止数据被盗取.目前Office版本众多, ...
- english & utils & tools
english & utils & tools https://openlanguage.com/ https://www.grammarly.com/blog/email-writi ...
- MBP 2018 & Mac keyboard shortcuts
MBP 2018 & Mac keyboard shortcuts https://support.apple.com/en-us/HT201236 delete key === Contro ...
- CSU1217
就跟数字出现奇数次道理是一样的,将一个数转化为2进制后找出现奇数次个1的位置,最后将其输出来便是出现奇数次的数 #include <cstdio> int main() { int n,a ...
- noip模拟赛 终末
分析:举个例子就能发现:偶数位上的数都必须是0,奇数位上的数可以取0~k-1,这就是一个标准的数位dp了. 这编译器......数组越界了竟然不报错. #include <cstdio> ...
- java 判断一个字符串是否为纯数字
if (getUid().matches("[0-9]+")) { Log.v("纯数字");} else { Log.v("非纯数字"); ...
- BootStrap3栅格系统与布局
栅格系统与布局 Use our powerful mobile-first flexbox grid to build layouts of all shapes and sizes thanks t ...