zoukankan      html  css  js  c++  java
  • 利用jquery写的一个TAB页切换效果

    函数如下

    [javascript] view plaincopy
     
    1. /** 
    2.  *切换效果 
    3.  */  
    4. function switab(tab,con,tab_c_css,tab_n_css,no) {  
    5.     $(tab).each(function(i){  
    6.         if(i == no)  
    7.         {  
    8.             $(this).addClass(tab_c_css);  
    9.         }else  
    10.         {  
    11.             $(this).removeClass(tab_c_css);  
    12.             $(this).addClass(tab_n_css);  
    13.         }  
    14.     })  
    15.     if (con)  
    16.     {  
    17.         $(con).each(function(i){  
    18.             if(i == no)  
    19.             {  
    20.                 $(this).show();  
    21.             }else  
    22.             {  
    23.                 $(this).hide();  
    24.             }  
    25.         })  
    26.     }  
    27. }  

    使用前提条件:

    加载jquery类

    页面上有一个系列的切换的头和主体,如

    tab头:
    <div id="switab">
    <li class="on" >标题1</li>

    <li >标题2</li>

    <li >标题3</li>

    内容:

    <div class="content" >主内容1</div>

    <div class="content" >主内容2</div>

    <div class="content" >主内容3</div>

    </div>

    然后面页面的加载事件,或直接在上面的li上面添加上点击事件:

    页面加载事件方法:
    $(document).ready(function(){
        $("#switab li").each(function(i){
            $(this).click(function(){
                switab('#switab li','.content','on','',i);        
            })
        })
    })

    如果直接在li添加点击事件就在上面的li写成如下:
    <li class="on" onclick="switab('#switab li','.content','on','',0)">标题1</li>

    <li onclick="switab('#switab li','.content','on','',1)">标题2</li>

    <li onclick="switab('#switab li','.content','on','',2)">标题3</li>

    但为了代码分离,建义使用前面的方法

    switab函数参数介绍:
    1.要切换的标题的批配条件,不要用ID,因为jquery用ID的话,找到的是一个对像,而不是对像数组,可以用name/class 或是父的过渡到子的,就像我例子上的/
    2.主体内容批配的条件
    3.标题为点中时的样式
    4.标题为非选中状态时的样式
    5.当前第几个,从0开始
    由于用了jquery就不需要为标题/内容定义特殊的ID了,只要jquery能定位到这些就可以了。代码灵活性提高了,同时JS与HTML代码实现了完全分离!
    另外如果以后要增加标签项,JS不用动,直接加就可以了。只要标题和内容相批配就行了  

  • 相关阅读:
    安装CentOS7
    gitlab的CI/CD实现
    如何实现7*24小时灵活发布?阿里技术团队这么做
    架构整洁之道, 看这一篇就够了!
    什么是数据湖?有什么用?
    2020 云原生 7 大趋势预测
    饿了么交易系统 5 年演化史
    ajax 传参数 数组 会加上中括号
    文件下载
    数组常用方法
  • 原文地址:https://www.cnblogs.com/goodbeypeterpan/p/4101388.html
Copyright © 2011-2022 走看看