javascript - 单击块中的任何位置时如何切换数据内容
问题描述
我正在创建一个常见问题页面,其中包含许多问题,如下所示。活动类添加了下拉内容的功能。使用的脚本是:
const toggles = document.querySelectorAll('.faq-toggle');
toggles.forEach(toggle => {
toggle.addEventListener('click', () => {
toggle.parentNode.classList.toggle('active');
});
})
演示:
const toggles = document.querySelectorAll('.faq-toggle');
toggles.forEach(toggle => {
toggle.addEventListener('click', () => {
toggle.parentNode.classList.toggle('active');
});
})
<div class="faq active">
<h3 class="faq-title">
Title
</h3>
<p class="faq-text">
Answer
</p>
<button class="faq-toggle">
<i class="fas fa-chevron-down"></i>
<i class="fas fa-times"></i>
</button>
</div>
切换功能应用于添加活动类的按钮,从而创建下拉菜单。每当我单击卡片上的任意位置时,我都想显示下拉内容。目前,下拉部分仅在单击按钮时打开。我尝试将 faq-toggle 类添加到主 div 但它不起作用。我如何实现这一目标?
解决方案
切换整个卡片而不是仅仅定位按钮
无论您单击其中的任何位置还是按钮本身,下面的代码都将切换活动类
const toggles = document.querySelectorAll('.faq');
toggles.forEach(toggle => {
toggle.addEventListener('click', () => {
toggle.classList.toggle('active');
});
})
推荐阅读
- python - Tkinter 程序在第一次尝试时无法正常工作,重启后按预期工作
- bash - bash:合并(交错)插入第二行第一行的两个文件,在第一次出现字符串之前...
- json - datetime.datetime 对象不可下标
- php - 将文件插入 SQL 数据库并检索它
- java - Spring XML 配置类路径
- sas - 比较N个数据集,只输出并保存差异
- javascript - Javascript/html 使计时器在您停止输入时停止(在您最后一个字的 10 秒后)
- gradle - 将 iOS/Android groovy gradle 文件转换为 kotlin - getBinary、getProperty(+ 文字属性)?
- javascript - 如何让php在rest api调用之间等待几秒钟
- node.js - node.js 中的数组推送操作