导航:

1,insertBefore(),insertAfter(),prependTo(),appendTo()这四个函数用法几乎一样

2, 与之相对的有四个函数:Before(),After(),prepend(),append()

1,jQuery.insertAfter() 函数详解(其他三个参考其用法)

insertAfter()函数用于将当前所有匹配元素插入到指定元素之后

与该函数相对的是insertBefore()函数,用于将当前所有匹配元素插入到指定元素之前。

该函数属于jQuery对象(实例)。

语法

jQueryObject.insertAfter( target )

参数

参数 描述
target String/Element/jQuery类型指定的目标元素,以便于在该目标之后插入当前匹配的元素。

如果参数target为字符串类型,则将其视作jQuery选择器或html内容字符串,jQuery会自行判断。

返回值

insertAfter()函数的返回值为jQuery类型,返回表示插入内容的jQuery对象。

注意:如果当前jQuery对象匹配的元素是当前页面中的某些元素,那么这些元素将从原位置上消失。简而言之,这相当于一个移动操作,而不是复制操作。

示例&说明

insertAfter()函数用于将所有匹配元素插入到指定元素之后的位置:

<p>段落文本1<span></span></p><p>段落文本2<span></span></p>

<!--以上是jQuery代码执行前的html内容--><script type="text/javascript">$('<!--插入到p元素之后的位置-->').insertAfter( "p" );// 其返回值就是匹配插入内容(两个注释元素'<!--插入到p元素之后的位置-->')的jQuery对象</script><!--以下是jQuery代码执行后的html内容-->

<p>段落文本1<span></span></p><!--插入到p元素之后的位置--><p>段落文本2<span></span></p><!--插入到p元素之后的位置-->

请注意insertAfter()函数和after()函数的区别:

var $A = $("s1");var $B = $("s2");

// 将$A插入到$B之后$A.insertAfter( $B ); // 返回表示插入内容的jQuery对象( 匹配所有$B之后插入的$A元素 )// 将$B插入到$A之后$A.after( $B ); // 返回$A

以下面这段HTML代码为例:

<p id="n1">    <span id="n2">span#n2</span>    </p><p id="n3">    <label id="n4" class="move">label#n4</label></p><p id="n5">    <span id="n6">span#n6</span></p>

以下jQuery示例代码用于演示insertAfter()函数的具体用法:

// 将一个自定义的i元素插入到n4之后$('<i>i元素</i>').insertAfter( "#n4" );

// 将n4插入到n2之后// n4将从原位置上消失$('#4').insertAfter( document.getElementById("n2") );

//将一个自定义的strong元素插入到每个span元素之后$("<strong>插入文本</strong>").insertAfter( "span" );

运行代码

insertAfter()会将当前匹配元素插入到目标元素的结束标记之后不会额外添加任何空白字符,上述代码执行后的完整html代码如下(格式未作任何调整):

<p id="n1">    <span id="n2">span#n2</span><strong>插入文本</strong>    </p><p id="n3">    <label id="n4" class="move">label#n4</label><i>i元素</i></p>

2,after()函数用法详解(其他三个可参考其用法)

after()函数用于在每个匹配元素之后插入指定的内容

指定的内容可以是:html字符串、DOM元素(或数组)、jQuery对象、函数(返回值)。

与该函数相对的是before()函数,用于在每个匹配元素之前插入指定的内容。

该函数属于jQuery对象(实例)。

语法

jQueryObject.after( content1 [, content2 [, contentN ]] )

参数

参数 描述
content1 String/Element/jQuery/Function类型指定的追加内容。
content2 可选/String/Element/jQuery类型指定的追加内容。
contentN 可选/String/Element/jQuery类型指定的追加内容,可以有任意多个。

after()可以将多个参数所表示的内容全部插入到紧邻每个匹配元素之后的位置。如果参数为字符串类型,则将其视作html字符串。

jQuery 1.4 新增支持:参数content1可以为函数。after()将根据匹配的所有元素遍历执行该函数,函数中的this将指向对应的DOM元素。

after()还会为函数传入两个参数:第一个参数就是当前元素在匹配元素中的索引,第二个参数就是该元素当前的内部html内容(innerHTML)。函数的返回值就是需要插入的内容(可以是html字符串、DOM元素、jQuery对象)。

注意:只有第一个参数可以为自定义函数,用于遍历执行。如果之后的参数也为函数,则调用其toString()方法,将其转为字符串,并视为html内容。

返回值

after()函数的返回值为jQuery类型,返回当前jQuery对象本身(以便于进行链式风格的编程)。

注意:如果插入的内容是当前页面中的某些元素,那么这些元素将从原位置上消失。简而言之,这相当于一个移动操作,而不是复制操作。

示例&说明

after()函数用于在每个匹配元素之后的位置插入内容:

<p>段落文本1<span></span></p><!--插入到p元素之后的位置--><p>段落文本2<span></span></p><!--插入到p元素之后的位置-->

<script type="text/javascript">$("p").after( '<!--插入到p元素之后的位置-->' ); </script>

请注意after()函数和insertAfter()函数的区别:

var $A = $("s1");var $B = $("s2");

// 将$B插入到$A之后$A.after( $B ); // 返回$A// 将$A插入到$B之后$A.insertAfter( $B ); // 返回表示插入内容的jQuery对象( 匹配所有$B之后插入的$A元素 )

以下面这段HTML代码为例:

<p id="n1">    <span id="n2">span#n2</span>    </p><p id="n3">    <label id="n4">label#n4</label>    <i id="n5">i#n5</i></p>

以下jQuery示例代码用于演示after()函数的具体用法:

// 在n4之后插入一个自定义的span元素$("#n4").after('<span id="n6">span#n6(new)</span>');

// 在n2之后插入n5// n5将从原位置上消失$("#n2").after( document.getElementById("n5") );

// 在每个span元素之后插入自定义的strong元素$("span").after( function(index, innerHTML){    return '<strong>strong元素' + (index + 1) + '</strong>';} );

运行代码

after()会将内容插入指定元素的结束标记之后不会额外添加任何空白字符,上述代码执行后的完整html代码如下(格式未作任何调整):

<p id="n1">    <span id="n2">span#n2</span><strong>strong元素1</strong><i id="n5">i#n5</i>    </p><p id="n3">    <label id="n4">label#n4</label><span id="n6">span#n6(new)</span><strong>strong元素2</strong>    </p>

jquery之insertBefore(),insertAfter(),prependTo(),appendTo()用法详解的更多相关文章

  1. jquery组件WebUploader文件上传用法详解

    这篇文章主要为大家详细介绍了jquery组件WebUploader文件上传用法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 WebUploader是由Baidu WebFE(FEX)团队开发的一 ...

  2. jquery ajax 的 $.get()用法详解

    js文件 $(document).ready(function(){ $("form").submit(function(event) {event.preventDefault( ...

  3. jQuery 事件用法详解

    jQuery 事件用法详解 目录 简介 实现原理 事件操作 绑定事件 解除事件 触发事件 事件委托 事件操作进阶 阻止默认事件 阻止事件传播 阻止事件向后执行 命名空间 自定义事件 事件队列 jque ...

  4. Vue1.0用法详解

    Vue.js 不支持 IE8 及其以下版本,因为 Vue.js 使用了 IE8 不能实现的 ECMAScript 5 特性. 开发环境部署 可参考使用 vue+webpack. 基本用法 1 2 3 ...

  5. js数组中foEach和map的用法详解 jq中的$.each和$.map

    数组中foEach和map的用法详解 相同点: 1.都是循环遍历数组(仅仅是数组)中的每一项. 2.forEach() 和 map() 里面每一次执行匿名函数都支持3个参数:数组中的当前项value, ...

  6. C#中string.format用法详解

    C#中string.format用法详解 本文实例总结了C#中string.format用法.分享给大家供大家参考.具体分析如下: String.Format 方法的几种定义: String.Form ...

  7. @RequestMapping 用法详解之地址映射

    @RequestMapping 用法详解之地址映射 引言: 前段时间项目中用到了RESTful模式来开发程序,但是当用POST.PUT模式提交数据时,发现服务器端接受不到提交的数据(服务器端参数绑定没 ...

  8. linux管道命令grep命令参数及用法详解---附使用案例|grep

    功能说明:查找文件里符合条件的字符串. 语 法:grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>] ...

  9. mysql中event的用法详解

    一.基本概念mysql5.1版本开始引进event概念.event既“时间触发器”,与triggers的事件触发不同,event类似与linux crontab计划任务,用于时间触发.通过单独或调用存 ...

随机推荐

  1. 《zw版·Halcon-delphi系列原创教程》 2d照片-3d逆向建模脚本

    <zw版·Halcon-delphi系列原创教程> 2d照片-3d逆向建模脚本 3D逆向建模,是逆向工程的核心要素.       3D逆向建模,除了目前通用的3D点云模式,通过2D图像实现 ...

  2. 【rails3教材】博客构建过程2

    2. 使用脚手架快速搭建网页 rails的脚手架可以快速生成应用程序的一些片段,如果你需要为一个资源创建一系列的控制器视图模型,那么脚手架就是你需要的工具 3. 创建资源 对于一个博客程序,你可以以生 ...

  3. Rsync详解

    Rsync详解 1.什么是RsyncRsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.Rsync使用所谓的“Rsync算法”来使本 ...

  4. Couchbase

    Couchbase介绍,更好的Cache系统 在移动互联网时代,我们面对的是更多的客户端,更低的请求延迟,这当然需要对数据做大量的 Cache 以提高读写速度. 术语 节点:指集群里的一台服务器. 现 ...

  5. shell 加减乘除

    #!/bin/basha=$1b=$2echo a+b=$(($a+$b))echo a-b=$(($a-$b))echo a*b=$(($a*$b))echo a/b=$(($a/$b))echo ...

  6. 从Windows 8 安装光盘安装.NET Framework 3.5.1

    在安装一些应用时, 例如安装 Oracle, 可能会缺少了安装 .Net FrameWork 3.5.1 无法继续. 最简单的方法当时是,直接进 控制面板, 在添加删除程序内, 选择增加Windows ...

  7. Linux USB摄像头驱动【转】

    本文转载自:http://www.itdadao.com/articles/c15a509940p0.html 在 cortex-a8 中,可接入摄像头的接口通常可以分为两种, CAMERA 接口和 ...

  8. javaWeb 使用jsp标签进行防盗链

    /** * 1.新建类继承SimpleTagSupport * 新建2个属性, 添加对应的set方法 * 覆盖doTag()方法 */ import java.io.IOException; impo ...

  9. css改变背景透明度【转】

    兼容主流浏览器的CSS透明代码: .transparent_class { filter:alpha(opacity=50); -moz-opacity:0.5; -khtml-opacity: 0. ...

  10. 9、Http回顾/Servlet

    1 Http回顾 Http协议: 1)http协议: 对浏览器客户端和服务器端之间数据传输的格式规范. 2)http请求:浏览器->服务器端 格式: 请求行(请求方式(GET/POST) 请求资 ...