html - 将每 4 个产品包装在一个 div 中

标签 html bigcartel

我需要一点帮助。我正在构建自己的自定义 BigCartel 主题,但遇到了以下问题:目前我在主产品页面上列出了我的所有产品(数量不多),我试图将每 4 个产品包装在一个分区 基本上我有

<div class="product"></div>
<div class="product"></div>
<div class="product"></div>
<div class="product"></div>
<div class="product"></div>

我想要的最终结果是

<div class="wrap">
  <div class="product"></div>
  <div class="product"></div>
  <div class="product"></div>
  <div class="product"></div>
</div>
<div class="wrap">
  <div class="product"></div>
</div>

我不确定我应该如何使用他们的模板语言来做到这一点。

最佳答案

使用 jQuery :

var wraps = $('.wrap');
$('.products').each( function(e, i){
  wraps[Math.floor(i/4)].appendChild(e);
})

jQuery 将返回所有产品的列表 ( HTMLCollection ),迭代此列表,您可以引用列表索引将您的项目包装在 div 中。

关于html - 将每 4 个产品包装在一个 div 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29108326/

相关文章:

javascript - 为什么 .closest(selector) 返回多个值?

html - 在其他两个之间(垂直)拉伸(stretch)中间 div

html - Bigcartel 中的居中图像

html - 更改 "Previous"和 "Next"变量的默认文本

jquery - 我可以从 Big Cartel 中的幻灯片放映下方移除导航点吗?

html - 带有不带目标属性的链接的 CSS 选择器

javascript - Bootstrap 5 下拉菜单不适用于 Angular 12

html - 大卡特尔 - 网站标题

html - 如何在第一页时隐藏分页中的 "previous"按钮?

html - 浏览器全屏时的视口(viewport)高度问题