classList实现列表展开效果

类似这样的展开效果

页面打开会开始渲染列表,如果点击其中一个列表 list 需要展开其说明或者备注,那我们就需要用到这样的方法(不唯一,也可能有更简单的方法)

Step1. 我们需要在渲染的列表上进行数据绑定,要让点击事件触发的时候带列表索引过去


<div class="integrate-info">
  <div class="integrate-site" @click="start(index)">
    <span class="recharge recharge-long">
      <span class="recharge-way">这是标题这是标题</span>
      <span class="recharge-data">2017.26.12 00:20</span>
    </span>
    <span class="use-integrate">+100</span>
  </div>
  <div class="hide show">
    <span>这是备注这是备注</span>
  </div>
</div>

image.png

Step2. 点击之后会触发start方法并且带了实参index过来,接下来我们就要利用这个index完成一些交互

start (index) {
  var hide = document.getElementsByClassName('hide') // 找到这个hide的属性,同级class还有个.show
  for (var i = 0; i <= 10; i++) { // for循环进行检查列表
    if (i !=== index) {
      hide[i].classList.remove('show')  // 如果不是点击的列表项,则清除附加的class(show)
    }
    if (i === index) {
      hide[i].classList.toggle('show')  // 如果是点击的列表项,则toggle
    }
  }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,264评论 19 139
  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,709评论 1 92
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 177,007评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,788评论 4 61
  • 添哥进入小学生活一个月,有些记忆仿佛就在昨天,时间真的太快,明明感觉自己都还在小担忧添哥上小学的不适,如今顺...
    朵朵的小日子阅读 3,552评论 0 1

友情链接更多精彩内容