javascript - 原生 JS 使用每个父类上的计数器重置添加类
问题描述
我有这个结构:
<div class="parent">
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
</div>
<div class="parent">
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
</div>
我需要在每个子 div 上加一并在计数器传递给新的父类时重置计数器。我可以使用 Jquery 轻松地做到这一点,each
但我很难让它与原生 JavaScript 一起使用,因为我正在处理的项目不使用 Jquery。结构应如下所示:
<div class="parent">
<div class="child-1"></div>
<div class="child-2"></div>
<div class="child-3"></div>
<div class="child-4"></div>
</div>
<div class="parent">
<div class="child-1"></div>
<div class="child-2"></div>
<div class="child-3"></div>
</div>
我一直在使用var ParentDiv= document.querySelectorAll(".parent");
和ChildDiv = document.querySelectorAll(".child");
我有一个计数器正在进行for
循环,但无法让它重新启动每个父级的计数器。有什么帮助可以指出我如何做到这一点?
解决方案
您可以遍历父母,并为每个父母将计数器重置回一个,然后再遍历孩子。像这样的东西:
let ParentDiv= document.querySelectorAll(".parent");
for (let parent of ParentDiv) {
let count = 1
for (let child of parent.querySelectorAll(".child")){
child.className += '-' + count++
}
}
// print parents to check results:
for (let parent of document.querySelectorAll(".parent")){
console.log(parent.innerHTML)
}
<div class="parent">
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
</div>
<div class="parent">
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
</div>
推荐阅读
- javascript - 带有 API 调用的 ReactJS 保护路由
- regex - 我怎样才能将这个术语限制为 3 件命中?
- android - 如何修复在 OnCreateView() 中变为 null 的 List<>
- ajax - Ajax 函数返回成功但控制器函数未执行
- firebase - Firebase Cloud Function(异步)不返回结果
- html - 页脚按钮的 CSS 颜色
- spring - 如果使用 SpEL 的属性映射不为空,则有条件地创建 bean
- react-native - 将蓝牙连接到 Allflex Livestock 袖珍阅读器设备不工作
- python - 如何在训练期间读取数据子集时保存/恢复?
- ios - 应用程序崩溃如果在滚动 UITableView 时 popViewController