$('a').wrapAll(function(){ return '<div></div>' ;}) 和 $('a').wrap(function(){ return '<div></div>' ;})运行结果一样,但实际上有什么区别???

来源:5-5 DOM包裹wrapAll()方法

淡水狗

2017-06-14 15:11

 $('a').wrapAll(function(){ return '<div></div>' ;}) 


和 $('a').wrap(function(){ return '<div></div>' ;})



运行结果一样,但实际上有什么区别??? 

写回答 关注

7回答

  • 日月石
    2017-06-29 09:56:33
    已采纳

    有区别!!!

    方法一共用一个div;方法二各有一个div;设置div间距就可以看出来。

    如本节示例,right下div中p永远用一个div,都显示黄色;而left下div中p各自有一个div,所以p之间有间隔。

    望采纳

    慕UI352... 回复淡水狗

    现在有答案了吗 还没有搞明白啊,望解答,多谢了

    2017-11-03 10:29:58

    共 3 条回复 >

  • CoderEnko
    2018-01-09 16:52:09

    LZ说的是使用回调方法返回包裹元素,这里匹配的元素只是单个的a元素,so 没区别。但是如果匹配的元素内部还有多个a元素就有区别了。

  • qq_蒙蒙细雨_0
    2017-07-17 09:20:42

    理论上是   wrap()给一个元素加一个父类;有多个元素,分别加多个父类

                      wrapAll() 给元素集合加一个父类;有多个元素,只加一个父类。

    但在本页代码中 wrapAll()给两个a元素加了两个盒子

    http://img.mukewang.com/596c109300017b1817650897.jpg

    qq_与陌D...

    wrapall是遍历、如果中间传的参数是function的话他会直接满足条件就加一个父类、如果不穿参数的话他会遍历完再去加父类,感觉wrap传参和不传参效果是不一样的

    2017-07-19 16:13:59

    共 2 条回复 >

  • 慕莱坞9796870
    2017-07-10 19:34:41

    没区别+1

  • yelllowsky
    2017-06-30 23:41:03

    没区别+1

  • 小白脸专业户
    2017-06-28 16:28:40

    没区别+1

  • qq_对自己说_04235697
    2017-06-14 16:01:41

    没区别

jQuery基础(二)—DOM篇

jQuery第二阶段开启DOM修炼,了解创建、插入、删除与替换

114012 学习 · 590 问题

查看课程

相似问题