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>
jquery之insertBefore(),insertAfter(),prependTo(),appendTo()用法详解的更多相关文章
- jquery组件WebUploader文件上传用法详解
这篇文章主要为大家详细介绍了jquery组件WebUploader文件上传用法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 WebUploader是由Baidu WebFE(FEX)团队开发的一 ...
- jquery ajax 的 $.get()用法详解
js文件 $(document).ready(function(){ $("form").submit(function(event) {event.preventDefault( ...
- jQuery 事件用法详解
jQuery 事件用法详解 目录 简介 实现原理 事件操作 绑定事件 解除事件 触发事件 事件委托 事件操作进阶 阻止默认事件 阻止事件传播 阻止事件向后执行 命名空间 自定义事件 事件队列 jque ...
- Vue1.0用法详解
Vue.js 不支持 IE8 及其以下版本,因为 Vue.js 使用了 IE8 不能实现的 ECMAScript 5 特性. 开发环境部署 可参考使用 vue+webpack. 基本用法 1 2 3 ...
- js数组中foEach和map的用法详解 jq中的$.each和$.map
数组中foEach和map的用法详解 相同点: 1.都是循环遍历数组(仅仅是数组)中的每一项. 2.forEach() 和 map() 里面每一次执行匿名函数都支持3个参数:数组中的当前项value, ...
- C#中string.format用法详解
C#中string.format用法详解 本文实例总结了C#中string.format用法.分享给大家供大家参考.具体分析如下: String.Format 方法的几种定义: String.Form ...
- @RequestMapping 用法详解之地址映射
@RequestMapping 用法详解之地址映射 引言: 前段时间项目中用到了RESTful模式来开发程序,但是当用POST.PUT模式提交数据时,发现服务器端接受不到提交的数据(服务器端参数绑定没 ...
- linux管道命令grep命令参数及用法详解---附使用案例|grep
功能说明:查找文件里符合条件的字符串. 语 法:grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>] ...
- mysql中event的用法详解
一.基本概念mysql5.1版本开始引进event概念.event既“时间触发器”,与triggers的事件触发不同,event类似与linux crontab计划任务,用于时间触发.通过单独或调用存 ...
随机推荐
- 2. 星际争霸之php面向对象(二)
题记==============================================================================本php设计模式专辑来源于博客(jymo ...
- php 环境的搭建
---恢复内容开始--- 在win7下配置 PHP + Apache + Mysql 环境 1. 准备环境 php: php-5.3.2-Win32-VC6-x86.VC9是专门为IIS定制的,VC6 ...
- Asp.net中后台C#数组与前台Javascript数组交互
摘自:http://blog.csdn.net/a6225301/article/details/20003305 在上一篇<asp.net中javascript与后台c#交互>中实现了前 ...
- jquery 实践总结
Ready事件 对DOM操作之前需要监听页面加载进度,应当在页面加载完成之后再执行DOM编辑操作. $(document).ready(function(){ ... }); 或者 $(functio ...
- 三层架构与MVC的PK--ASP.NET MVC图解(一)
- 如何清除DNS缓存,使用cmd命令清理DNS缓存方法
如何清除DNS缓存,使用cmd命令清理DNS缓存方法 有时候电脑突然上不了网,或者存在某些网站打不开的情况,但别的网站又可以打开,解决办法需要清除DNS缓存,那么如何清除DNS缓存呢,最常用的方法就是 ...
- Linux/Unix中的#!和!#
是不是在Terminal输入命令的时候,输入了很长的一个路径,然后发现还有在同一条命令中再输一次的时候很恼火,其实Shell是提供了trick的,就是使用!#(和#!不同哦) 习惯写脚本的猿,通常对于 ...
- shell脚本小技巧
输入参数错误时,退格会出现^H,这个时候只要在脚本顶部加一条语句:stty erase ^h就可以了 #!/bin/sh stty erase ^h
- 工具类 dp转px 获取图片实际尺寸 获取屏幕尺寸
dp转px public class Dp2pxUtils { public static int Dp2Px(Context context, float dp) { final float sca ...
- 杭电1013-Digitai Root(另解)
#include<stdio.h>#define maxsize 1000 int main(){ char N[maxsize+1]; int i,j,sum,n; c ...