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

JavaScript如何实现点击按钮仅展示带bookmarkChecked类的激活区块

实现方案

1. 新增页脚控制按钮

在页脚DOM结构中添加筛选按钮:

<footer>
  <button id="filterBookmarkBtn">仅查看已收藏章节</button>
</footer>

2. 新增隐藏样式

在CSS文件中添加章节隐藏类:

.section-hide {
  display: none !important;
}

如需保留文档流占位,可将display: none替换为visibility: hidden或opacity: 0

3. 新增筛选逻辑

在现有JS代码末尾补充以下逻辑:

const filterBtn = document.querySelector('#filterBookmarkBtn')
const allSections = document.querySelectorAll('.main__section')
let isFilterMode = false

filterBtn.addEventListener('click', () => {
  isFilterMode = !isFilterMode
  filterBtn.innerText = isFilterMode ? '展示全部章节' : '仅查看已收藏章节'

  allSections.forEach(section => {
    const currentBookmark = section.querySelector('.pictureBook')
    if (isFilterMode) {
      currentBookmark.classList.contains('bookmarkChecked') 
        ? section.classList.remove('section-hide') 
        : section.classList.add('section-hide')
    } else {
      section.classList.remove('section-hide')
    }
  })
})

可选优化

如果需要页面刷新后保留收藏状态,可将每个书签的选中状态存入localStorage,页面初始化时读取状态赋值对应DOM即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 13:48:05