zoukankan      html  css  js  c++  java
  • jQuery 标签切换----之选项卡的实现

    这一次,我自己写了代码,先看html部分:

    复制代码
    <div class="tab">
        <div class="tab_menu">
            <ul>
                <li class="selected">时事</li>
                <li>体育</li>
                <li>娱乐</li>
            </ul>
        </div>
        <div class="tab_box"> 
             <div>时事</div>
             <div class="hide">体育</div>
             <div class="hide">娱乐</div>
        </div>
    </div>
    复制代码

    html中,需要一个大的div,里面有两个子div,一个作为导航头tab_menu,一个作为内容体tab_box。css代码负责布局html内容。

    再看看下面的代码:

    复制代码
    <script type="text/javascript" >
    //<![CDATA[
        $(function(){
            var $div_li =$("div.tab_menu ul li");
            $div_li.click(function(){
                $(this).addClass("selected")            //当前<li>元素高亮
                       .siblings().removeClass("selected");  //去掉其它同辈<li>元素的高亮
                var index =  $div_li.index(this);  // 获取当前点击的<li>元素 在 全部li元素中的索引。
                $("div.tab_box > div")       //选取子节点。不选取子节点的话,会引起错误。如果里面还有div 
                        .eq(index).show()   //显示 <li>元素对应的<div>元素
                        .siblings().hide(); //隐藏其它几个同辈的<div>元素
            })
        })
    //]]>
    </script>
    复制代码

    这里的处理就特别的巧妙,它通过获取li的索引,对选项体进行处理。它巧妙的利用了一个隐藏的对应关系,就是索引值。

    这样即便选项头与选项体内容不对应,一样可以实现联动效果。

    心怀梦想,勿忘初心
  • 相关阅读:
    用IntelliJ IDEA 开发Spring+SpringMVC+Mybatis框架 分步搭建一:建立MAVEN Web项目
    jvm学习笔记二(减少GC开销的建议)
    jvm学习笔记一(垃圾回收算法)
    【转】 StringUtils中 isNotEmpty 和isNotBlank的区别
    单例模式
    工厂模式
    个人项目作业
    第一次作业-热身!
    第四单元总结
    第三单元总结
  • 原文地址:https://www.cnblogs.com/qshting/p/5124679.html
Copyright © 2011-2022 走看看