• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • remove()

    将匹配元素集合从DOM中删除。同时移除元素上的事件及 jQuery 数据。

    .remove([selector])

    selector类型: String。一个选择器表达式用来过滤将被移除的匹配元素集合。

    .empty()相似。.remove()将元素移出DOM。当我们想将元素自身移除时我们用.remove(),同时也会移除元素内部的一切,包括绑定的事件及与该元素相关的jQuery数据。要删除的元素不删除数据和事件的情况下,使用.detach()来代替。

    请看下面的HTML:

    <div class="container">
      <div class="hello">Hello</div>
      <div class="goodbye">Goodbye</div>
    </div>
    

    可以移除任何想要移除的元素:

    $('.hello').remove();
    

    结果如下:

    <div class="container">
      <div class="goodbye">Goodbye</div>
    </div>
    

    如果<div class="hello">元素里面有子元素,他们同样会被移除。还有元素上的事件及 jQuery 数据也会被删除。

    我们也可以添加一个可选的选择器参数来过滤匹配的元素。例如,前面的代码可以重写为:

    $('div').remove('.hello');
    

    结果将一样:

    <div class="container">
      <div class="goodbye">Goodbye</div>
    </div>
    

    例子

    将所有段落从DOM删除:

    <!DOCTYPE html>
    <html>
    <head>
      <style>p { background:yellow; margin:6px 0; }</style>
      <script src="https://www.lanmper.cn/static/js/jquery-3.5.0.js"></script>
    </head>
    <body>
      <p>Hello</p>
      how are
      <p>you?</p>
      <button>Call remove() on paragraphs</button>
    <script>
    $("button").click(function () {
      $("p").remove();
    });
    </script>
     
    </body>
    </html>
    

    上篇:empty()