完美实现js选项卡切换效果(一)

 更新时间:2021年10月11日 15:04:49   作者:Vampire-blog  
这篇文章主要为大家详细介绍如何完美实现js选项卡切换效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了js选项卡切换的具体代码,可以手动切换,另设置定时器可使其自动切换,供大家参考,具体内容如下

效果如图:

具体代码:

<!DOCTYPE html>
<html>
<head lang="en">
 <meta charset="UTF-8">
 <title></title>
</head>
<style type="text/css">
 *{
  margin: 0;
  padding: 0;
  font-size: 12px;
  font-family: "微软雅黑";
  color: #000000;
  text-decoration: none;
  list-style-type: none;
 }
 #tab-list{
  width: 275px;
  height: 190px;
  margin: 30px auto;
 }
 #list{
  height: 32px;
  border-bottom: #8B4513 2px solid;
 }
 #list li{
  display: inline-block;
  width: 60px;
  border: 1px solid #999999;
  border-bottom: none;
  line-height: 30px;
  margin-left: 5px;
  text-align: center;
  cursor: pointer;
 }
 #list .active{
  border-top: 2px solid #8B4513;
  border-bottom: 2px solid #fff;
 }
 #tab-list div{
  border: 1px solid #7396B8;
  border-top: none;
 }
 #tab-list div li{
  height: 30px;
  line-height: 30px;
  text-indent: 8px;
 }
 #tab-list .show{
  display: block;
 }
 #tab-list .hidden{
  display: none;
 }

</style>
<script type="text/javascript">
 window.onload=function(){
  var tab=document.getElementById('tab-list');
  var list=document.getElementById('list').getElementsByTagName('li');
  var div=tab.getElementsByTagName('div');
  var timer=null;
  var index=0;
  for(var i=0;i<list.length;i++){
   list[i].num=i;
   list[i].onmouseover=function(){
    Change(this.num);
   }
  }
  function Change(curIndex){
   for(var i=0;i<list.length;i++){
    list[i].className="";
    div[i].className="hidden";
   }
   list[curIndex].className="active";
   div[curIndex].className="show";
   index=curIndex;
  }
  //自动播放
  function autoPlay(){
   timer=setInterval(function(){
    index++;
    if(index > list.length - 1){
     index=0;
    }
    Change(index);
   },2000);
  }
  autoPlay();
  tab.onmouseover=function(){
   clearInterval(timer);
  }
  tab.onmouseout=function(){
   autoPlay();
  }
 }
</script>
<body>
<div id="tab-list">
 <ul id="list">
  <li class="active">房产</li><li>家居</li><li>二手房</li>
 </ul>
 <div class="show">
  <ul>
   <li><a href="javascript:;">275万购昌平邻铁三居 总价20万买一居</a></li>
   <li><a href="javascript:;">200万内购五环三居 140万安家东三环</a></li>
   <li><a href="javascript:;">北京首现零首付楼盘 53万购东5环50平</a></li>
   <li><a href="javascript:;">京楼盘直降5000 中信府 公园楼王现房</a></li>
  </ul>
 </div>
 <div class="hidden">
  <ul>
   <li><a href="javascript:;">40平出租屋大改造 美少女的混搭小窝</a></li>
   <li><a href="javascript:;">经典清新简欧爱家 90平老房焕发新生</a></li>
   <li><a href="javascript:;">新中式的酷色温情 66平撞色活泼家居</a></li>
   <li><a href="javascript:;">瓷砖就像选好老婆 卫生间烟道的设计</a></li>
  </ul>
 </div>
 <div class="hidden">
  <ul>
   <li><a href="javascript:;">通州豪华3居260万 二环稀缺2居250w甩</a></li>
   <li><a href="javascript:;">西3环通透2居290万 130万2居限量抢购</a></li>
   <li><a href="javascript:;">黄城根小学学区仅260万 121平70万抛!</a></li>
   <li><a href="javascript:;">独家别墅280万 苏州桥2居优惠价248万</a></li>
  </ul>
 </div>
</div>

</body>
</html>

如果大家还想深入学习,可以点击两个精彩的专题:javascript选项卡操作方法汇总 jquery选项卡操作方法汇总

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 20个你不得不知道的JS async/await实用技巧

    20个你不得不知道的JS async/await实用技巧

    JavaScript的async和await关键词是现代JavaScript异步编程的核心,它们让异步代码看起来和同步代码几乎一样,使得异步编程变得更加直观和易于管理,本文介绍20个关于async/await的实用技巧,将大大提升编程效率和代码的清晰度,需要的朋友可以参考下
    2023-12-12
  • JavaScript 数组的深度复制解析

    JavaScript 数组的深度复制解析

    一般情况下,使用 “=” 可以实现赋值。但对于数组、对象、函数等这些引用类型的数据,这个符号就不好使了。这篇文章主要介绍了JavaScript 数组的深度复制解析的相关资料,需要的朋友可以参考下
    2016-11-11
  • js监听元素是否出现在可视区域详解(IntersectionObserver)

    js监听元素是否出现在可视区域详解(IntersectionObserver)

    这篇文章主要给大家介绍了关于js监听元素是否出现在可视区域(IntersectionObserver)的相关资料, IntersectionObserver是一个JavaScript API,用于监测一个元素与其父元素或视窗的交叉状态,需要的朋友可以参考下
    2024-06-06
  • Google排名中的10个最著名的 JavaScript库

    Google排名中的10个最著名的 JavaScript库

    本文,我们将使用 Google 搜索出排名前 10 位的 JavaScript 库,并对它们逐一进行介绍。
    2010-04-04
  • 跟我学Nodejs(三)--- Node.js模块

    跟我学Nodejs(三)--- Node.js模块

    这是本系列的第三篇文章了,前面2篇网友们反馈回来不少的消息,加上最近2天比较忙,一直没来得及整理,周末了,赶紧给大家整理下发出来,本文讲的是node.js模块
    2014-05-05
  • js利用for in循环获取 一个对象的所有属性以及值的实例

    js利用for in循环获取 一个对象的所有属性以及值的实例

    下面小编就为大家带来一篇js利用for in循环获取 一个对象的所有属性以及值的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • 微信小程序pinker组件使用实现自动相减日期

    微信小程序pinker组件使用实现自动相减日期

    这篇文章主要介绍了微信小程序pinker组件使用实现自动相减日期,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • js添加千分位的实现代码(超简单)

    js添加千分位的实现代码(超简单)

    下面小编就为大家带来一篇js添加千分位的实现代码(超简单)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • js全选按钮的实现方法

    js全选按钮的实现方法

    在我们进行项目选择时,会出现选择多个项目或者是项目实现全选,这样的功能如何实现呐,本文给出了js实现checkbox全选的详细代码,希望大家喜欢。
    2015-11-11
  • javascript之querySelector和querySelectorAll使用介绍

    javascript之querySelector和querySelectorAll使用介绍

    其实关于querySelector和querySelectorAll的介绍说明很多。在此主要是做个记录
    2011-12-12

最新评论