Jquery 将元素包裹在 div 内

标签 jquery html

我想在以下三个元素上添加一个 div:

<div class="wrapper">
   <fieldset class="inner"></fieldset>
   <fieldset class="inner first_name"></fieldset>
   <fieldset class="inner last_name"></fieldset>
   <fieldset class="inner user"></fieldset>
   <fieldset class="inner password"></fieldset>
   <fieldset class="inner"></fieldset>
   <fieldset class="inner avatar"></fieldset>
   <fieldset class="inner submit"></fieldset>
</div>

所以结果如下:

<div class="wrapper">

   <div class="inner-left">
      <fieldset class="inner"></fieldset>
      <fieldset class="inner first_name"></fieldset>
      <fieldset class="inner last_name"></fieldset>
      <fieldset class="inner user"></fieldset>
      <fieldset class="inner password"></fieldset>
   </div>

   <div class="inner-middle">
      <fieldset class="inner"></fieldset>
      <fieldset class="inner avatar"></fieldset>
   </div>

   <div class="inner-right">
      <fieldset class="inner submit"></fieldset>
   </div>

</div>

我尝试过Jquery Multiple Wrap,但无法实现它。 可以用 jQuery 完成吗?

谢谢,

最佳答案

在jquery中使用.wrapAll()。并且 .slice() 分割你想要的 dom 元素

$(".inner").slice(0,5).wrapAll( "<div class='inner-left'></div>" );
$(".inner").slice(5,7).wrapAll( "<div class='inner-middle'></div>" );
$(".inner").slice(7).wrapAll( "<div class='inner-right'></div>" );

DEMO

var cache = $( ".inner" )

cache.slice(0,5).wrapAll( "<div class='inner-left'></div>" )
     .end()
     .slice(5,7).wrapAll( "<div class='inner-middle'></div>" )
     .end()
     .slice(7).wrapAll( "<div class='inner-right'></div>" );

关于Jquery 将元素包裹在 div 内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24323586/

相关文章:

javascript - Jquery 页面无法在浏览器中的 android 强制门户登录上运行

javascript - 返回 false 不起作用

php - 无法使用php将图像上传到mysql

html - 删除 flex 布局中列之间的间隙

javascript - Angularjs 将变量绑定(bind)到外部 css 文件

html - 如何使用CSS修改 "sign in"页面?

javascript - 如何根据下拉选择使文本框只读?

c# - 如何访问 CheckBoxList 中 ListItems 的键

javascript - 使用 jQuery 获取列中的第一个表格单元格值

html - 设置 flexbox 图像之间距离的更好方法