点击第一级显示二,三级,然后点击二级,或者三级又会显示相应里面的子内容.
这种的要怎么写JS
可以直接使用 <detail>
。不过 Firefox 不兼容,不过考虑到国内 Firefox 的占有率,其实问题也不大。
第二个方案考虑使用 :checked + <label>
,可以参考我这篇文章:纯CSS实现多选组件 和这个讲堂:写 CSS 也要开脑洞:万能的 :checked + label
。
最后,如果非要用 JS 的话,下面是一段简单的范例,需要 jQuery:
<div class="collapse">
<a name="level-1" class="toggle">第一级</a>
<div class="details">
</div>
$('.collapse").on('click', '.toggle', function (e) {
$(e.currentTarget).parent().children().filter('.details').toggle();
});
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
5 回答1.9k 阅读
我这儿提供一个思路例子,
仅是一个例子
,例中给元素添加了自定义属性data-level
,虽然没有使用上,但是是可以根据这个自定义属性去控制显示隐藏和确定具体层级的!希望能给你提供一个解决问题的思路!