首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery展开所选元素

jQuery展开所选元素
EN

Stack Overflow用户
提问于 2014-12-20 05:38:00
回答 1查看 285关注 0票数 0

如何从DOM中删除元素,但仍然保留其内容?

我查看了.unwrap(),但它似乎删除了元素的父元素,而不管它的id或类是什么。

我想选择DOM中的任何元素并将其删除,但仍保留其子元素。我的结构与此类似。

代码语言:javascript
复制
<div class="remove-1">
   <div class="remove-2">

      <span>keep<h1>all</h1>this</span>

   </div>
</div>

我将使用它来删除" remove -1“元素

代码语言:javascript
复制
 $(".remove-2").unwrap(); // removes parent "remove-1".

但是我该如何删除" remove -2“元素呢?因为这个跨度并不总是存在的,而且它的父元素可能是我不想删除的另一个元素。

EN

回答 1

Stack Overflow用户

发布于 2014-12-20 05:41:31

使用函数.detach(),当您需要将这些元素附加回DOM时,您将附加到DOM树。

请参阅文档:http://api.jquery.com/detach/

更新1:

如果要展开元素的内容,则需要选择元素的子元素并将其全部展开。

代码语言:javascript
复制
$('button').click(function() {
  $("#detach").children().unwrap();
});
代码语言:javascript
复制
#detach {
  background-color: red;
  padding: 10px;
}
span {
  background-color: blue;
  color: white;
}
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h1 id="detach">

  <span>KEEP</span>
  <span>Keep second</span>
</h1>

<button>Unwrap content of red element</button>

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27574227

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档