在jQuery中,添加元素有append(),prepend和 after(),before()两种共四个。

根据字面意思我们可以看出他们分别是追加,添加和之前,之后,意思相近。同时他们又都有添加元素的作用,容易混淆。

要想搞清楚他们之间的区别。

首先我们要明白这几个函数各自的作用。

一.append()和prepend()的作用

append()用于在被选元素的结尾插入元素。

prepend()用于在被选元素的开头插入元素。

重点在于黑体字——被选元素的,

也就是说这两个函数的添加都是添加到元素的内部的。

demo1:

看下面的HTML代码

<div id="test">
<p>a</p>
</div>

使用 append( ) 和 prepend( )添加元素

$(document).ready(function(){
$("#test").append("<p>b</p>") //使用append()添加 b 段落
$("#test").prepend("<p>c</p>") //使用 prepend()添加 c 段落
})

效果如下

<div id="test">
<p>c</p>
<p>a</p>
<p>b</p>
</div>

demo2:

<ul id="test"> <li>a</li> </ul>

<script src='http://apps.bdimg.com/libs/jquery/2.1.4/jquery.js'></script>

<script>

$(function(){

$('#test').append('<li> b</li>');

$('#test').prepend('<li> c</li>');

})

</script>

显示如下:

demo3

<p id="test">a</p>
<script src='http://apps.bdimg.com/libs/jquery/2.1.4/jquery.js'></script>
<script>
$(function(){
$('#test').append('b');
$('#test').prepend('c');
})
</script>

显示样式如下:

从上面可以得知,当我们使用 append() 和 prepend()往 id 为 test 的 div 块添加元素时,是添加到 div 内部的。往p的内部添加内容,是直接加到p的内容的里面的

也就是说,我们添加的元素,成为了 被添加元素 的 子元素,或者是被添加元素的内容。

二. after() 和 before() 的作用

after()用于在被选元素之后插入内容。

before()用于在被选元素之前插入内容。

重点在于黑体字元素之前 ,元素之后。

这意味着这两个函数是往元素外部的前后添加的。

还是刚刚的HTML代码

<div id="test">
<p>a</p>
</div>

使用 after() 和 before()添加元素。

$(document).ready(function(){
$("#test").after("<p>b</p>")
$("#test").before("<p>c</p>")
})

结果如下

<p>c</p>
<div id="test">
<p>a</p>
</div>
<p>b</p>

从结果可知,after( ) 和 before( ) 往 id=”test“ 的 div块添加元素时,是添加到块外部的。

也就是说,添加的元素,成为了 被添加元素的 兄弟元素。

demo2如下:

<p id="test">a</p>
<script src='http://apps.bdimg.com/libs/jquery/2.1.4/jquery.js'></script>
<script>
$(function(){
$('#test').before('b');
$('#test').after('c');
})
</script>

样式如下:

三.区别和总结

通过上面两个例子,我们可以清楚的看到四个函数 append 和 prepend 与 after和before 的区别。

只要明白 往元素内的前后添加 和 往元素外的前后添加 的区别,就很容易区分了。

(转)jQuery中append(),prepend()与after(),before()的区别的更多相关文章

  1. jQuery中append(),prepend()与after(),before()的区别

    在jQuery中,添加元素有append(),prepend和 after(),before()两种共四个. 根据字面意思我们可以看出他们分别是追加,添加和之前,之后,意思相近.同时他们又都有添加元素 ...

  2. jQuery - 添加元素append/prepend和after/before的区别

    append <p> <span class="s1">s1</span> </p> <script> $(" ...

  3. jquery中append跟prepend的用法

    jquery中append和prepend的用法 append   是插入到元素中,并放到元素内的最后面prepend  是插入到元素中,并放到元素内的最前面例$("body"). ...

  4. jquery中append、prepend, before和after方法的区别(一)

    原文:http://blog.csdn.net/woosido123/article/details/64439490 在 jquery中append() 与 prepend()是在元素内插入内容(该 ...

  5. jQuery中append()与appendto()用法分析

    本文实例分析了jquery中append()与appendto()的用法.分享给大家供大家参考.具体分析如下: 在jQuery的文档操作方法中,append()和appentto()方法执行的任务相同 ...

  6. jQuery中四种事件监听的区别

    原文链接:点我 我们知道jquery提供了四种事件监听方式,分别是bind.live.delegate.on,下面就分别对这四种事件监听方式分析. 已知有4个列表元素: 列表元素1 列表元素2 列表元 ...

  7. jquery中,size()和length()方法有啥区别

    jquery中,size()和length()方法有啥区别? size()是jQuery提供的函数,而length是属性(不带括号). jQuery提供的源代码是这样的: size: function ...

  8. jQuery中hover与mouseover和mouseout的区别分析

    本文实例分析了jQuery中hover与mouseover和mouseout的区别.分享给大家供大家参考,具体如下: 以前一直以为在jquery中其实mouseover和mouseout两个事件等于h ...

  9. [转载]jQuery中的html,val,text区别

    在jquery中 text() 返回目标元素所包含的所有文本内容,注意不包含html标签 alert($("#shuru").text()); 1 html() 返回目标元素所包含 ...

随机推荐

  1. codeforces600E. Lomsat gelral(dsu on tree)

    dsu on tree先分轻重儿子先处理轻边,再处理重儿子再加上轻儿子的答案 #include<iostream> #include<cstdio> #include<q ...

  2. xlwt/xlwt/Style.py excel样式源文件

    from __future__ import print_function # -*- coding: windows-1252 -*- from . import Formatting from . ...

  3. MyBatis配置文件(七)--environments运行环境

    一.environments配置信息: environments的作用是用来配置数据库信息,可以配置多个,其有两个可配的子元素,分别是:事务管理器transactionManager和数据源dataS ...

  4. 自定义事件javascript

    自定义事件 1.event构造函数自定义事件 /* * 自定义一个名为build的事件 * bubbles :事件是否冒泡 * cancelable:是否阻止事件的默认操作 * composed:指示 ...

  5. 使用powerDesigner绘制类图

    使用powerDesigner绘制类图 因为后面要理清楚spring中类与类之间关系,我们来看看如何使用powerDesigner绘制类图 你要去下载powerDesiger,一路下一步安装好 打开, ...

  6. Hadoop IO 特性详解(2)【文件校验】

    (本文引用了microheart,ggjucheng的一些资料,在此感谢.charles觉得知识无价,开源共享无价) 这一次我们接着分析文件IO校验的相关代码,看看最底层是如何实现这种大数据集的文件校 ...

  7. mac linux 创建文件 Permission denied

    解决方法: $ sudo chmod -R 777  目录其中-R 是指级联应用到目录里的所有子目录和文件777 是所有用户都拥有最高权限

  8. 点击按钮使用window.open打开页面后,再次点击按钮会再打开一个页面,如何解决?

    点击按钮使用window.open打开页面后,再次点击按钮会再打开一个页面,如何解决? window.open("page1.html","win1"); 这句 ...

  9. Uva10817 Headmaster's Headache

    https://odzkskevi.qnssl.com/b506a3c20adad78678917d1ff4c9b953?v=1508327485 [题解] dp[i][S1][S2]表示前i个教师选 ...

  10. CentOS 7下使用RPM安装mysql的方法。

    1.卸载系统自带的 mariadb-lib [root@centos-linux ~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x8 ...