javascript - 单击时仅切换循环中的一个元素
问题描述
我在刀片文件中有一个 for each 循环来显示 items 。
当一个元素名称仅单击同一项目时,我想要的是切换但我的代码切换所有项目。
如何解决?
问题是我的 JavaScript 代码
var isHidden = true;
function loadToggleAction() {
var sheet = document.createElement('style')
if (!isHidden) {
sheet.innerHTML = ".show {display:none;}";
} else {
sheet.innerHTML = ".show {display:block;}";
}
document.body.appendChild(sheet);
isHidden = !isHidden;
}
<h2 class="lesson-h2" onclick="loadToggleAction()">
lesson 1
</h2>
<a class="lesson-file" href="{{ " #play " }}">
<img class="show-lesson" src="img.png" title="مشاهده آنلاین این درس" height="24" onclick="loadToggleAction()">
</a>
<div class="show">
lesson 1 content
</div>
<h2 class="lesson-h2" onclick="loadToggleAction()">
lesson 2
</h2>
<a class="lesson-file" href="{{ " #play " }}">
<img class="show-lesson" src="img.png" title="مشاهده آنلاین این درس" height="24" onclick="loadToggleAction()">
</a>
<div class="show">
lesson 2 content
</div>
<h2 class="lesson-h2" onclick="loadToggleAction()">
lesson 3
</h2>
<a class="lesson-file" href="{{ " #play " }}">
<img class="show-lesson" src="img.png" title="مشاهده آنلاین این درس" height="24" onclick="loadToggleAction()">
</a>
<div class="show">
lesson 3 content
</div>
解决方案
如果您想使用 CSS 执行此操作,则需要在迭代时为您的课程 h2 组件计算一个 id(您可以使用 for 循环中的索引来执行此操作。
完成此操作后,您可以直接在 loadToggleAction() 函数中更改 ID 上的显示样式(而不是像您实际所做的那样在类上)。
推荐阅读
- python - 在 Django 上提供具有不同编码的 csv 文件
- python - Sqlalchemy 数据库查询
- python - 操作数据帧
- php - 为什么codeigniter在服务器中突然停止工作
- excel - VBA 中的错误:在循环中选择不连续的单元格范围
- android - 将 UDP 数据包转换为字符串并显示在日志中
- python - 是否有一些不同的方法可以在 VS 代码中导入 RE,或者我是否缺少一些设置?
- java - HarmonyOS 相当于 Android 中的 android.graphics.Typeface 是什么?
- mysql - 如何让增量值在另一列中运行
- airflow - 气流访问 Dag 定义中的命令行参数