jquery - 包装多个元素 (jQuery)

标签 jquery dom

我有这段 HTML:

div.content
  div.one
    content
  div.two
    content
  div.three
    content

我想在顶部和底部添加两个 div在其周围包裹一个 div,这样它就变成了:

div.top
div.wrapper
  div.content
    div.one
      content
    div.two
      content
    div.three
      content
div.bottom

我知道几个换行选择器(innerWrap、wrapAll 等..),但我不确定如何换行 2 个 div。

下面的 jQuery 可能可以工作,但是有更好的方法来编写它吗?

$('content').wrap('<div class="wrapper"></div');
$('.wrapper').before('<div class="top"></div>');
$('.wrapper').after('<div class="bottom"></div>');

最佳答案

我会在一行中完成以最小化查找:

$('content')
     .before('<div class="top"></div>')
     .after('<div class="bottom"></div>')
     .wrap('<div class="wrapper"></div>');

关于jquery - 包装多个元素 (jQuery),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1852587/

相关文章:

jQuery - 拖动时停止悬停事件

javascript - 如何获取页面的源代码而不是当前内容?

javascript - 对象神秘更新而没有调用更新函数

javascript - 动态创建div

dom - YUI3 DOM 未定义?

jquery - 根据唯一选择或不同的复选框组合(例如超过 2 个)显示内容

javascript - 如何使用 jquery 突出显示事件选项卡

jquery ui 对话框在按钮和内容 div 上使用相同的类打开多个对话框

jquery - 表格单元格侧边栏不折叠(动画宽度)

javascript - 按顺序获取文本节点及其父元素(比看起来更难)