使用jQuery中的wrap()函数操作HTML元素的教程


Posted in Javascript onMay 24, 2016

wrap()函数用于在每个匹配元素外部包裹指定的HTML结构。
与该函数相对的是unwrap()函数,用于当前匹配元素的父元素(只移除父元素,其内部节点全部保留)。
该函数属于jQuery对象(实例)。

语法

jQueryObject.wrap( wrapper )

参数
wrapper String/Element/jQuery/Function类型用于包裹匹配元素的节点。
如果参数wrapper为字符串,则将其视作jQuery选择器或html字符串,jQuery会自行判断。
jQuery 1.4 新增支持:参数wrapper可以为函数。wrap()将根据匹配的所有元素遍历执行该函数,函数中的this将指向对应的DOM元素。
wrap()还会为函数传入一个参数,即当前元素在匹配元素中的索引。函数的返回值就是用于包裹的节点内容(可以是html字符串、DOM元素或jQuery对象)。
注意:如果wrapper匹配多个元素,则只将第一个元素作为包裹元素。
注意:如果wrapper是多层嵌套的元素(例如<p><i></i></p>),wrap()将从外往内检查每层嵌套的第一个节点。如果该节点没有子节点或者第一个子节点不是Element节点(比如文本节点、注释节点等),就停止向内查找,直接在当前节点内部的末尾位置追加(append())当前匹配元素。

返回值
wrap()函数的返回值为jQuery类型,返回当前jQuery对象本身(以便于进行链式风格的编程)。
注意:即使wrapper元素是当前页面中的元素,该元素也不会从原位置上消失。因为wrap()使用的是该元素的副本(克隆)来充当包裹。

示例

<div class="container">
 <div class="inner">Hello</div>
 <div class="inner">Goodbye</div>
</div>
$( ".inner" ).wrap(function() {
 return "<div class='" + $( this ).text() + "'></div>";
});

结果如下:

<div class="container">
 <div class="Hello">
  <div class="inner">Hello</div>
 </div>
 <div class="Goodbye">
  <div class="inner">Goodbye</div>
 </div>
</div>

类似的用法还有.wrapAll()、.wrapInner()、.unwrap()等等!

Javascript 相关文章推荐
JavaScript中Array 对象相关的几个方法
Dec 22 Javascript
自写的一个jQuery圆角插件
Oct 26 Javascript
查询json的数据结构的8种方式简介
Mar 10 Javascript
js调试系列 初识控制台
Jun 18 Javascript
node.js 开发指南 ? Node.js 连接 MySQL 并进行数据库操作
Jul 29 Javascript
jQuery实现的淡入淡出与滑入滑出效果示例
Apr 18 jQuery
在vue-cli项目中使用bootstrap的方法示例
Apr 21 Javascript
jQuery中元素选择器(element)简单用法示例
May 14 jQuery
可能被忽略的一些JavaScript数组方法细节
Feb 28 Javascript
vue-autoui自匹配webapi的UI控件的实现
Mar 20 Javascript
js简单实现自动生成表格功能示例
Jun 02 Javascript
jQuery实现查看图片功能
Dec 01 jQuery
实例解析jQuery中proxy()函数的用法
May 24 #Javascript
jQuery前端开发35个小技巧
May 24 #Javascript
JS+Canvas绘制时钟效果
Aug 20 #Javascript
基于JQuery实现图片上传预览与删除操作
May 24 #Javascript
JavaScript仿淘宝页面图片滚动加载及刷新回顶部的方法解析
May 24 #Javascript
通过jquery-ui中的sortable来实现拖拽排序的简单实例
May 24 #Javascript
ECHO.js 纯javascript轻量级延迟加载的实例代码
May 24 #Javascript
You might like
总集篇&特番节目先行播出!《SAO Alicization War of Underworld》第2季度TV动画4月25日放送!
2020/03/06 日漫
Http 1.1 Etag 与 Last-Modified提高php效率
2008/01/10 PHP
php win下Socket方式发邮件类
2009/08/21 PHP
php 获取远程网页内容的函数
2009/09/08 PHP
php中神奇的fastcgi_finish_request
2011/05/02 PHP
php 归并排序 数组交集
2011/05/10 PHP
php数组函数序列之rsort() - 对数组的元素值进行降序排序
2011/11/02 PHP
php定期拉取数据对比方法实例
2019/09/22 PHP
ExtJS 2.0实用简明教程 之Border区域布局
2009/04/29 Javascript
制作jquery遮罩层效果导航菜单代码分享
2013/12/25 Javascript
scrollWidth,clientWidth,offsetWidth的区别
2015/01/13 Javascript
javascript实现密码强度显示
2015/03/18 Javascript
JavaScript中return用法示例
2016/11/29 Javascript
JS实现重新加载当前页面或者父页面的几种方法
2016/11/30 Javascript
js实现小窗口拖拽效果
2016/12/03 Javascript
angularjs实现柱状图动态加载的示例
2017/12/11 Javascript
JavaScript解析及序列化JSON的方法实例分析
2019/01/04 Javascript
Angular2使用SVG自定义图表(条形图、折线图)组件示例
2019/05/10 Javascript
详解一次Vue低版本安卓白屏问题的解决过程
2019/05/30 Javascript
VUE.CLI4.0配置多页面入口的实现
2019/11/25 Javascript
[00:36]DOTA2风云人物相约完美“圣”典 12月17日不见不散
2016/11/30 DOTA
[43:03]完美世界DOTA2联赛PWL S2 PXG vs Magma 第二场 11.21
2020/11/24 DOTA
利用Python脚本在Nginx和uwsgi上部署MoinMoin的教程
2015/05/05 Python
Python面向对象之类和对象实例详解
2018/12/10 Python
python根据时间获取周数代码实例
2019/09/30 Python
解决Python import docx出错DLL load failed的问题
2020/02/13 Python
Python如何使用ConfigParser读取配置文件
2020/11/12 Python
美国女孩服装购物网站:Justice
2017/03/04 全球购物
迪士尼英国官方商店:shopDisney UK
2019/09/21 全球购物
无故旷工检讨书
2014/01/26 职场文书
《邮票齿孔的故事》教学反思
2014/02/22 职场文书
教学评估实施方案
2014/03/16 职场文书
学校班班通实施方案
2014/06/11 职场文书
先进党支部申报材料
2014/12/24 职场文书
开学典礼观后感
2015/06/15 职场文书
使用Ajax实现无刷新上传文件
2022/04/12 Javascript