You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript无法为dropdown-content添加show类问题求助

解决Dropdown-content无法添加show类的问题

问题1:选择器层级错误

你当前用的选择器 #{{course.course_id}} .dropdown-content 是在找a标签的子元素里的dropdown-content,但实际DOM结构中,dropdown-content和a标签是同级(都在.eps_dots容器内),导致选择器找不到目标元素。

修改方案:
通过点击的a标签找到父容器,再定位同级的dropdown-content,直接用原生JS操作更可靠:

function get(el) {
  // 获取当前a标签的父容器
  const parentContainer = el.closest('.eps_dots');
  // 切换目标元素的show类
  parentContainer.querySelector('.dropdown-content').classList.toggle('show');
}

同时把HTML里的onclick改为传递当前元素:

<a href="#" onclick="get(this)" id="{{course.course_id}}" class=""><i class="uil uil-ellipsis-v"></i></a>

问题2:CSS选择器精准度不足

当前CSS .eps_dots .show 会匹配.eps_dots下所有带show类的元素,可能出现样式冲突或优先级不足的情况,需要精准定位到dropdown-content:

.eps_dots .dropdown-content.show {
  display: block !important;
}

额外优化:避免页面跳转

点击带href="#"的a标签会触发页面跳转至顶部,可在onclick中阻止默认行为:

<a href="#" onclick="get(this); return false;" id="{{course.course_id}}" class=""><i class="uil uil-ellipsis-v"></i></a>

内容的提问来源于stack exchange,提问作者Sandesh Singh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 22:15:36