Home > Web Front-end > JS Tutorial > body text

js/jQuery simply implements tab function

高洛峰
Release: 2017-02-04 14:38:28
Original
906 people have browsed it

The first method is to use the native js code as follows:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>简单选项卡</title>
    <style type="text/css">
    body,ul,li{margin:0;padding:0;}
    body{font:12px/1.5 Tahoma;}
    #outer{width:450px;margin:10px auto;}
    #tab{overflow:hidden;zoom:1;background:#000;border:1px solid #000;}
    #tab li{float:left;color:#fff;height:30px;cursor:pointer;line-height:30px;list-style-type:none;padding:0 20px;}
    #tab li.current{color:#000;background:#ccc;}
    #content{border:1px solid #000;border-top-width:0;}
    #content ul{line-height:25px;display:none;margin:0 30px;padding:10px 0;}
    </style>
    <script type="text/javascript">
      window.onload = function ()
      {
          var oLi = document.getElementById("tab").getElementsByTagName("li");
          var oUl = document.getElementById("content").getElementsByTagName("ul");
          for(var i = 0; i < oLi.length; i++)
          {
              oLi[i].index = i;
              oLi[i].onmouseover = function (){
                  for(var n = 0;n < oLi.length;n++)
                  {
                      oLi[n].className = "";
                      this.className = "current";
                  }
                      for(var n = 0;n <oUl.length;n++)
                      {
                          oUl[n].style.display = "none";
                          oUl[this.index].style.display="block";
                      }
              }
          }
      }
    </script>
    </head>
<body>
<div id="outer">
<ul id="tab">
    <li class="current">科技</li>
    <li>旅游</li>
    <li>娱乐</li>
</ul>
<div id="content">
    <ul style="display:block;">
        <li>宏碁R7双转轴变形本评测:触摸板设计过于另类(图)</li>
        <li> 超薄加防水 索尼Xperia Tablet Z平板电脑评测</li>
        <li>诺基亚Lumia 925评测 最好的WP8智能手机</li>
        <li> 联想IdeaPad S405评测 性能主流续航待提升</li>
        <li>小辣椒M2智能手机评测: 再不换壳我们就该老了</li>
        <li>联想K900内部构造 看国产神器多少国产货(组图)</li>
        <li>联想K900内部构造 看国产神器多少国产货(组图)</li>
        <li>网页换肤效果</li>
        <li>联想K900内部构造 看国产神器多少国产货(组图)</li>
    </ul>
    <ul>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
    </ul>
    <ul>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
    </ul>
</div>
</div>
</body>
</html>
Copy after login

The second method is to use jQuery to implement, the code is simpler than the first method

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>简单选项卡</title>
    <style type="text/css">
    body,ul,li{margin:0;padding:0;}
    body{font:12px/1.5 Tahoma;}
    #outer{width:450px;margin:10px auto;}
    #tab{overflow:hidden;zoom:1;background:#000;border:1px solid #000;}
    #tab li{float:left;color:#fff;height:30px;cursor:pointer;line-height:30px;list-style-type:none;padding:0 20px;}
    #tab li.current{color:#000;background:#ccc;}
    #content{border:1px solid #000;border-top-width:0;}
    #content ul{line-height:25px;display:none;margin:0 30px;padding:10px 0;}
    </style>
    <script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
    <script type="text/javascript">

    $(function(){
            var timeid;
          $("#tab").find("li").each(function(index){
              var sLi=$(this);
              sLi.mouseenter(function(){
                  timeid= setTimeout(function(){
                      sLi.addClass("current").siblings().removeClass("current");
                      sLi.parent().next().find("ul:eq(" + index +")").show().siblings().hide() ;
                 },300);
              }).mouseleave(function(){
                     clearTimeout(timeid);
                      })
          })
        })
    </script>
    </head>
<body>
<div id="outer">
<ul id="tab">
    <li class="current">科技</li>
    <li>旅游</li>
    <li>娱乐</li>
</ul>
<div id="content">
    <ul style="display:block;">
        <li>宏碁R7双转轴变形本评测:触摸板设计过于另类(图)</li>
        <li> 超薄加防水 索尼Xperia Tablet Z平板电脑评测</li>
        <li>诺基亚Lumia 925评测 最好的WP8智能手机</li>
        <li> 联想IdeaPad S405评测 性能主流续航待提升</li>
        <li>小辣椒M2智能手机评测: 再不换壳我们就该老了</li>
        <li>联想K900内部构造 看国产神器多少国产货(组图)</li>
        <li>联想K900内部构造 看国产神器多少国产货(组图)</li>
        <li>网页换肤效果</li>
        <li>联想K900内部构造 看国产神器多少国产货(组图)</li>
    </ul>
    <ul>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
        <li>爱上西雅图,美国全景游精选推荐 </li>
    </ul>
    <ul>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
        <li>李安宣布辞拍美剧《暴君》:需要休息</li>
    </ul>
</div>
</div>
</body>
</html>
Copy after login

The first method is to use native The js is based on other people's methods, and the second one is written by me based on the first method. . .

For more articles related to js/jQuery simply implementing the tab function, please pay attention to the PHP Chinese website!
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template