zoukankan      html  css  js  c++  java
  • JavaScript学习笔记2之Tab切换

    1、Tab切换简写版1

    页面布局如下:

     1 <div id="tab">
     2      <h1 id="title">
     3         <span class="select">标题一</span>
     4         <span>标题二</span>
     5         <span>标题三</span>
     6     </h1>
     7     <ul id="content">
     8         <li class="show">内容一</li>
     9         <li>内容二</li>
    10         <li>内容三</li>
    11     </ul>
    12 </div>                    

    关于点击事件样式如下:

    1 /*默认样式&点击后样式*/
    2 #title .select{
    3     color:#FFFFFF;
    4     background: #0AA770;
    5 }
    6 #content .show{
    7     display: block;
    8 }

    默认样式如下:

    JS代码:

     1  var tit=document.getElementById('title');
     2   var con=document.getElementById('content');
     3   var spans=tit.getElementsByTagName('span');
     4   var lis=con.getElementsByTagName('li');
     5   //第一个for循环 给每一个span绑定点击事件
     6   for (var i = 0, len= spans.length; i < len; i++){
     7       spans[i].onclick=function(){
     8          //第二个for循环 遍历找出当前点击是的span
     9          for (var j = 0,len= spans.length; j < len; j++) {
    10                 if (spans[j]==this) {
    11                     this.className='select';
    12                     // spans[v].className='select';//效果同上
    13                     lis[j].className='show';
    14                 } else {//若没被选中清空设置
    15                     spans[j].className='';
    16                     lis[j].className='';
    17                 }
    18          }
    19       }
    20   }

    2、Tab切换简写版2

    页面布局与默认样式设置与上面相同

    JS代码:

     1 var tit=document.getElementById('title');
     2   var con=document.getElementById('content');
     3   var spans=tit.getElementsByTagName('span');
     4   var lis=con.getElementsByTagName('li');
     5   //第一个for循环 给每一个span绑定点击事件
     6   for (var i = 0, len= spans.length; i < len; i++){
     7       spans[i].index=i;//不同处:获取当前点击事件的索引值为后面设置绑定对象使用
     8       spans[i].onclick=function(){
     9          //第二个for循环 遍历找出当前点击是的span
    10          //清空所有的绑定对象
    11          for (var j = 0,len = spans.length; j < len;j++) {
    12              spans[j].className='';
    13             lis[j].className='';
    14          }
    15          //单独对点击事件绑定对象,索引值来自之前获取的
    16          this.className='select';
    17          lis[this.index].className='show';
    18       }
    19   }
  • 相关阅读:
    Jzoj3555 树的直径
    Jzoj3555 树的直径
    51Nod1022 石子归并V2
    51Nod1022 石子归并V2
    Bzoj3998 弦论
    Bzoj3998 弦论
    Poj2758 Checking the Text
    Poj2758 Checking the Text
    常用SQL语句大全
    Silverlight调用GP服务第二篇之调用GP服务(Geoprocessing Service)过程详解
  • 原文地址:https://www.cnblogs.com/paulirish/p/Tab.html
Copyright © 2011-2022 走看看