jquery之insertBefore(),insertAfter(),prependTo(),appendTo()用法详解

导航:

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>
时间: 2024-10-12 16:22:40

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

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

js文件 $(document).ready(function(){ $("form").submit(function(event) {event.preventDefault()})//取消submit的默认行为 $("form input[type='submit']").click(function(){ var url = $('form').attr('action'); // 取Form中要提交的链接 var param = {}; // 组装发送参数

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

这篇文章主要为大家详细介绍了jquery组件WebUploader文件上传用法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 WebUploader是由Baidu WebFE(FEX)团队开发的一个简单的以HTML5为主,FLASH为辅的现代文件上传组件,下文来为各位演示一下关于jquery WebUploader文件上传组件的用法. 使用WebUploader还可以批量上传文件.支持缩略图等等众多参数选项可设置,以及多个事件方法可调用,你可以随心所欲的定制你要的上传组件. 接下来我以图片上

jQuery 事件用法详解

jQuery 事件用法详解 目录 简介 实现原理 事件操作 绑定事件 解除事件 触发事件 事件委托 事件操作进阶 阻止默认事件 阻止事件传播 阻止事件向后执行 命名空间 自定义事件 事件队列 jquery中文文档 简介 jquery 之所以成为最受欢迎的前端库,很大一部分是得益于它的事件具有良好的语义,优秀的兼容性,并且便于管理和扩展. 在这里我会介绍 jquery 事件的一些比较基础的用法. 实现原理 jquery 事件脱胎于浏览器的 addEventListener (W3) 和 attac

jQuery的offset()和position()用法详解

offset()和position()用法详解: 这两个方法非常的常用,同时掌握起来有些困难,下面就介绍一下这两个方法的用法. 下面先看一下它们基本的定义: 1.offset()方法的定义: 此方法获取或者设置匹配元素在当前document的相对偏移. 此方法只对可见元素有效. 当获取偏移量时,方法的返回值是一个包含两个整型属性(top和left)的对象. 设置偏移量时,此方法的参数是带有top和left属性的对象. 具体用法可以参阅jQuery的offset()方法一章节. 2.positio

jQuery Validate插件 reomte用法详解

在用户注册时经常要通过ajax请求判断用户账号是否已注册,最方便的方法便是用jQuery Validate插件 reomte方法 Jquery Validate插件, 调用远程方法验证参数, remote的用法: 在validate的方法上加入remote:"校验方法",例如:remote: "/test/checkAccount.jsp", 这时传进checkAccount.jsp的参数就是account=$("#account").val()

jQuery的bind()方法用法详解

bind()方法用法详解: 此方法是使用比较频繁的方法之一,虽然在API手册上有着对方法的介绍,但是由于语言简短,例子不够详细,可能会造成不能够完全准确的掌握bind()方法的使用,下面就结合实例介绍一下此方法的使用. 语法格式: $(selector).bind(type,[data],function(eventObject)) 此方法可以为所有匹配元素的特定事件绑定事件处理函数,例如: <!DOCTYPE html> <html> <head> <meta

python处理word文件:win32com用法详解

目标:用python处理doc文件 方法:引入win32com模块 ************************************************************************** 一.安装 ************************************************************************** 首先要先下载安装win32com模块(起先在linux下装不成功,后在windows下面成功了...) 下载地址:http

Vue1.0用法详解

Vue.js 不支持 IE8 及其以下版本,因为 Vue.js 使用了 IE8 不能实现的 ECMAScript 5 特性. 开发环境部署 可参考使用 vue+webpack. 基本用法 1 2 3 4 5 6 7 8 9 10 11 <div id="app"> {{message}} <input v-model="message"> </div> new Vue({ ele: '#app', data: { message:

JSoup 用法详解

清单 1 // 直接从字符串中输入 HTML 文档 String html = "<html><head><title> 开源中国社区 </title></head>" + "<body><p> 这里是 jsoup 项目的相关文章 </p></body></html>"; Document doc = Jsoup.parse(html); // 从