利用冒泡机制几行jq代码轻松完成tab栏切换功能

原理:
1 tab栏被点击后触发点击事件
2 tab栏中的子项菜单全部移除当前active样式,对应的内容项全部隐藏
3 tab中被点击的子项菜单添加active样式
4 找到菜单项中data-id与被点击的子项菜单data-id相同的内容项,显示出来
注意:使用了jq动画需要stop(true,true)来删除之前动画,否则操作过快会导致页面的下拉菜单不消失

html

//tab栏
   <div class="sticky-top tabbar_box">
        <span  class="active" data-id="0">我的借阅</span>
        <span data-id="1">历史借阅</span>
        <span data-id="2">历史超期</span>
    </div>
//内容项
    <div class="result_list" data-id="0">
       111
    </div>
    <div class="result_list" data-id="1">
     222
    </div>
    <div class="result_list" data-id="2">
     333
    </div>

js:

//tab栏被点击后触发点击事件
 $(".tabbar_box").click(e=>{
//tab栏中的子项菜单全部移除当前active样式,对应的内容项全部隐藏
        $(".tabbar_box>span").removeClass("active");
        $(".result_list").hide();
//tab中被点击的子项菜单添加active样式
        $(e.target).addClass("active");
//找到菜单项中data-id与被点击的子项菜单data-id相同的内容项,显示出来
        $(".result_list").each(function(){
            if($(this).data('id') == $(e.target).data('id')) {
                $(this).stop(true,true).slideDown();
            }
        });
    });
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 7,388评论 0 17
  • 第5章 菜单、按钮及导航 一、下拉菜单 小伙伴们注意,在Bootstrap框架中的下拉菜单组件是一个独立的组件,根...
    凛0_0阅读 5,334评论 0 66
  • 第4章 Bootstrap装饰插件 JavaScript是网页上事实上的脚本语言。流行的网页功能,例如:漂亮的图片...
    海上名月阅读 1,751评论 5 6
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 15,675评论 4 61
  • 今天第一次画水粉,成图后觉得它是世界上最好看的苹果。
    蓝海_bluesea阅读 363评论 5 3

友情链接更多精彩内容