jQuery之设置元素内容(移动和复制元素,使用append(),appendTo()方法)

----------

如果想把内容添加到现有内容末尾,可以利用append()命令。
append()命令语法:
append(content)
把传入的HTML片段或元素追加到所有已匹配元素的内容之后
参数
content (字符串|元素|对象)将被追加到包装集各元素的一个字符串、元素或包装集。
这个函数接受包含HTML片段的字符串、现有或新建DOM元素的引用,或jquery元素包装集。
考虑如下简单情况:

  1. $('p').append('<b>some text<b>');

此语句将从传入字符串而创建的HTML片段,追加到页面上所有<p>元素的现有内容的末尾。这个命令的更加繁杂的用法是标识DOM现有元素作为追加项。考虑如下代码:

  1. $('p.appendToMe').append($("a.appendMe));

这个语句把带有类appendMe的所有链接,追加到带有类appendToMe的<p>元素。对原始元素的布置取决于作为追加目标的元素的数量。如果是单一的目标,则元素从原始位置删除---执行把原始元素移动到新父元素的操作。如果有多个目标,则原始元素留在原处,而原始元素的副本被追加到各个目标元素---复制操作。
如果不想追加整个包装集,也可以引用一个特定DOM元素,如下所示:

  1. var toAppend = $('a.appendMe')[0];
  2. $('p.appendToMe').append(toAppend);

标识为toAppend的元素是被移动还是被复制,取决于标识为$('p.appendToMe')的元素的数量:如果匹配一个元素则进行移动操作,如果匹配多个元素则进行复制操作。

===

如果我们想从一个地方移动或复制元素到另一个地方,更简单的解决办法是利用appendTo()命令,该命令允许获取元素并移动到DOM里另外的地方。
appendTo()语法:
appendTo(target)
把包装集里所有元素移动到指定目标的内容的末尾
参数
target  (字符串|元素)一个包含jquery选择器的字符串,或一个DOM元素。包装集各元素将追加到target所指定的那个位置。如果多个元素与一个选择器字符串匹配,则包装集各元素将被复制并追加到与选择器匹配的每个元素。

如果目的地只标识一个目标元素,则元素被移动;如果目的地标识多个目标元素,则源元素留在原始位置,且被复制到每个目标元素。
如例:

  1. <fieldset id="source">
  2. <legend>Source elements</legend>
  3. <img id="flower" src="flower.png" mce_src="flower.png"/>
  4. <img id="car" src="car.png" mce_src="car.png"/>
  5. </fieldset>
  6. <fieldset id="targets">
  7. <legend>Target elements</legend>
  8. <p><img src="dragonfly.png" mce_src="dragonfly.png"/></p>
  9. <p><img src="dragonfly.png" mce_src="dragonfly.png"/></p>
  10. <p><img src="dragonfly.png" mce_src="dragonfly.png"/></p>
  11. </fieldset>

操作:

  1. $('#flower').appendTo('#targets p');              //这是是复制
  2. $('#car').appendTo('#targets p:first');           //这个是移动

===

有几个相关命令的工作方式类似于append()和appendTo(),如:
1.prepend()和prependTo()---像append()和appendTo()那样执行,不过是在目标元素的内容之前插入源元素,而不是之后。
2.before()和insertBefore()---在目标元素之前插入元素,而不是在目标元素的第一个子元素之前。
3.after()和insertAfter()---在目标元素之后插入元素,而不是在目标元素的最后一个子元素之后。
如例:

  1. $('<p>H1 there!</p>').insetAfter('p img');

这个语句创建友好的段落,并把段落副本插入到段落内每个图像元素之后。

原文链接:http://blog.csdn.net/fhd001/article/details/6310320

jQuery之设置元素内容(移动和复制元素,使用append(),appendTo()方法)的更多相关文章

  1. 使用 jQuery对象设置页面中 <ul> 元素的标记类型,并使用 DOM 对象设置 <li> 元素的浮动属性和右边距。使用jQuery 对象和 DOM 对象设置页面元素属性

    查看本章节 查看作业目录 需求说明: 使用 jQuery对象设置页面中 <ul> 元素的标记类型,并使用 DOM 对象设置 <li> 元素的浮动属性和右边距.使用jQuery ...

  2. jQuery-处理元素内容、表单元素

    处理元素内容 1.text方法 使用说明: 1)不传参数 得到jQuery对象内所有元素及其后代元素的文本内容 2)传入用于设置匹配元素的文本内容 3)传入function 使用函数来设置jQuery ...

  3. 比较jquery中的after(),append(),appendTo()方法

    html页面: <p id="myp1">我的兴趣爱好是:</p> <button id="b1">after函数</ ...

  4. js怎么删除数组元素,有哪些删除元素方法

    JavaScript删除元素方法 1.根据索引删除数组元素 delete 数组[索引]   *注意delete 后面是空格 var arr1=["aa","bb" ...

  5. JQuery DOM操作:设置内容&属性&添加元素&插入元素&包裹&克隆&移除&替换

    JQuery text().html().val() $(elem).text(str):添加文本内容str到elem类型元素,返回jQuery对象 $(elem).text():返回第一个elem标 ...

  6. jQuery学习-访问设置元素内容

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  7. 常用JQuery设置HTML元素内容

    主要内容: 一.获取内容及属性 二.设置内容及属性 三.添加元素 四.删除元素 五.css()方法 六.寻找祖先及后代 一.获取内容及属性 二.设置内容及属性 相对于获取内容及属性的方式,只需在函数内 ...

  8. jQuery 源码解析(二十二) DOM操作模块 复制元素 详解

    本节说一下DOM操作模块里的复制元素子模块,该模块可以复制一个DOM节点,并且可选择的设置是否复制其数据缓存对象(包含事件信息)和是否深度复制(子孙节点等),API如下: $.clone(elem, ...

  9. 第一百六十六节,jQuery,基础 DOM 和 CSS 操作,元素内容,元素属性,css和class,元素宽度高度、偏移、滚动条

    jQuery,基础 DOM 和 CSS 操作,元素内容,元素属性,css和class,元素宽度高度.偏移.滚动条 学习要点: 1.DOM 简介 2.设置元素及内容 3.元素属性操作 4.元素样式操作 ...

随机推荐

  1. IK分词器原理与源码分析

    原文:http://3dobe.com/archives/44/ 引言 做搜索技术的不可能不接触分词器.个人认为为什么搜索引擎无法被数据库所替代的原因主要有两点,一个是在数据量比较大的时候,搜索引擎的 ...

  2. P2925 [USACO08DEC]干草出售Hay For Sale 题解

    \(\Huge{dp第一题}\) 题目描述 农民john面临一个很可怕的事实,因为防范失措他存储的所有稻草给澳大利亚蟑螂吃光了,他将面临没有稻草喂养奶牛的局面.在奶牛断粮之前,john拉着他的马车到农 ...

  3. CSS中#和.的区别

    id:用来定义页面中大的样式,如栏目划分,顶部,正文,底部等:用#top的形式来定义: class:用来定义一些比较细节的样式,如具体的一个菜单,一行文字等,用.text的形式来定义. 定义HTML中 ...

  4. c#几种数据库的大数据批量插入(SqlServer、Oracle、SQLite和MySql)

    这篇文章主要介绍了c#几种数据库的大数据批量插入(SqlServer.Oracle.SQLite和MySql),需要的朋友可以了解一下. 在之前只知道SqlServer支持数据批量插入,殊不知道Ora ...

  5. Mui 选项卡 tab 高度 没有自适应....

    因为项目中 用到了 mui ,mui 的选项卡有时候无法自适应高度,这回导致有的tab 出现一大片空白区域... 从jquery 的 思路 是  用一个值 保存 当前 的 高度... 当 点击其他 t ...

  6. CF1012B Chemical table(构造)

    [Luogu-CF1012B] 还有重题 P5089[eJOI2018]元素周期表 题解原话 : 可以发现这个过程是不改变二分图中的连通分量的个数的 答案就是 连通分量数-1 证明 : 设一行或一列为 ...

  7. LeetCode74.搜索二维矩阵

    74.搜索二维矩阵 描述 编写一个高效的算法来判断 m x n 矩阵中,是否存在一个目标值.该矩阵具有如下特性: 每行中的整数从左到右按升序排列. 每行的第一个整数大于前一行的最后一个整数. 示例 示 ...

  8. AMD、CMD/AMD与CMD的区别

    http://blog.csdn.net/jackwen110200/article/details/52105493

  9. BZOJ - 2457 思維+貪心

    //為什麼我的Chrome OS更新後變成強制繁體了?? 題目要求使用最少的雙端隊列來維護一個單調非降序列 先來看下規律 首先,val肯定是單調非降的,在相等val範圍內的id可以xjb亂放不影響 其 ...

  10. 有用的 Angular CLI 命令参数

    这是一些有用的 Angular 5 CLI 命令参数,注意参数前面的-和--的不同... 1. 指定build的输出为production version,合并优化css and js files. ...