• JavaScript 学习37.jQuery 添加/删除/替换元素 上海


    前言

    通过 jQuery,可以很容易地添加和删除元素。

    添加元素

    添加元素主要用到四个方法

    • append() - 在被选元素的结尾插入内容
    • prepend() - 在被选元素的开头插入内容
    • after() - 在被选元素之后插入内容
    • before() - 在被选元素之前插入内容

    append() 方法在被选元素的结尾插入内容(作为该元素子元素插入)

    <div id="demo">
        <p class="text-info">hello world</p>
        <input type="text" name="user" value="hello world">
    </div>
    <button id="btn">点我</button>
    <script>
        $(document).ready(function(){
          $("#btn").click(function(){
              // 添加一个元素
              $("#demo").append("<p>追加一段文本</p>");
          });
    });
    </script>
    

    点按钮后在div下新增一个元素

    prepend()在被选元素的开头插入内容

       $(document).ready(function(){
          $("#btn").click(function(){
              // 添加一个元素
              $("#demo").prepend("<p>追加一段文本</p>");
          });
        });
    

    实现效果,添加到div下第一个子元素

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

        $(document).ready(function(){
          $("#btn").click(function(){
              // 添加一个元素
              $("#demo").after("<p>追加一段文本</p>");
          });
        });
    

    在div后面添加兄弟元素

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

        $(document).ready(function(){
          $("#btn").click(function(){
              // 添加一个元素
              $("#demo").before("<p>追加一段文本</p>");
          });
        });
    

    replaceWith()替换元素

    replaceWith() 方法用指定的 HTML 内容或元素替换被选元素。

    content 参数必需。规定替换被选元素的内容。已存在的元素不会被移动,只会被复制,并包裹被选元素。

    基本语法

    $(selector).replaceWith(content)
    

    使用示例

    <div id="demo">
        <p class="text-info">hello world</p>
        <input type="text" name="user" value="hello world">
    </div>
    <button id="btn">点我</button>
    <script>
        $(document).ready(function(){
          $("#btn").click(function(){
              // 添加一个元素
              $("p.text-info").replaceWith("<p>替换成新文本</p>");
          });
        });
    </script>
    

    替换后

    replaceWith() 方法也可以传一个function 函数

    $(selector).replaceWith(function())
    

    示例

        $(document).ready(function(){
          $("#btn").click(function(){
              // 添加一个元素
              $("p.text-info").replaceWith(function () {
                  return '<p>new hello world</p>'
              });
          });
        });
    

    replaceAll() 与 replaceWith()功能类似,但是目标和源相反

    左边是新内容,右边selector是被替换的内容

    $(content).replaceAll(selector)
    

    示例

        $(document).ready(function(){
          $("#btn").click(function(){
              // 添加一个元素
              $('<p>new hello world</p>').replaceAll('p.text-info')
          });
        });
    

    总结:

    • replaceAll()和.replaceWith()功能类似,主要是目标和源的位置区别
    • replaceWith()与.replaceAll() 方法会删除与节点相关联的所有数据和事件处理程序
    • replaceWith()方法,和大部分其他jQuery方法一样,返回jQuery对象,所以可以和其他方法链接使用
    • replaceWith()方法返回的jQuery对象引用的是替换前的节点,而不是通过replaceWith/replaceAll方法替换后的节点

    删除元素remove()和empty()

    删除元素和内容,可使用以下两个 jQuery 方法:

    • empty() - 从被选元素中删除子元素
    • remove() - 删除被选元素(及其子元素)

    empty() 从被选元素中删除子元素

    示例

    <div id="demo">
        <p class="text-info">hello world</p>
        <input type="text" name="user" value="hello world">
    </div>
    <button id="btn">点我</button>
    <script>
        $(document).ready(function(){
          $("#btn").click(function(){
              // 添加一个元素
              $('#demo').empty();
          });
        });
    </script>
    

    div还在

    remove() 删除元素以及子元素

    <div id="demo">
        <p class="text-info">hello world</p>
        <input type="text" name="user" value="hello world">
    </div>
    <button id="btn">点我</button>
    <script>
        $(document).ready(function(){
          $("#btn").click(function(){
              // 添加一个元素
              $('#demo').remove();
          });
        });
    </script>
    

    remove() 会删除div以及它的子元素

  • 相关阅读:
    【独立开发人员er Cocos2d-x实战 001】csb文件导出和载入
    Best Time to Buy and Sell Stock I &amp;&amp; II &amp;&amp; III
    cocos2d-x项目101次相遇-安装和环境搭建 -xcode
    使用 C# 开发智能手机软件:推箱子(十二)
    javascript实现掉落弹出层------Day29
    Android中onTouch与onClick事件的关系
    CSDN编程挑战——《交替字符串》
    【NPR】非真实感渲染实验室
    CSS自己主动换行、强制不换行、强制断行、超出显示省略号
    在Ubuntu 14.04安装和使用Docker
  • 原文地址:https://www.cnblogs.com/yoyoketang/p/16331139.html
Copyright © 2020-2023  润新知