全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

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

本文实例为大家分享了js选项卡切换的具体代码,供大家参考,具体内容如下

通过设置定时器实现延时0.5s切换,一个重要的技巧是定义了一个that变量来存放当前指针this。

之所以不能在这直接引用this是因为setTimeout是window对象,用this的话会指向定时器,所以要在前面定义一个变量。
还要注意调用定时器前要判断是否存在准备执行的定时器。

效果如图:

具体代码:

<!DOCTYPE html>
<html>
<head lang="en">
 <meta charset="UTF-8">
 <title>延时切换</title>
 <style type="text/css">
  *{margin: 0;padding: 0;font: normal 12px "微软雅黑";color: #000000;}
  ul{list-style-type: none;}
  a{text-decoration: none;}
  #tab-list{width: 275px;height: 190px;margin: 20px auto;}
  #ul1{border-bottom: 2px solid #8B4513;height: 32px;}
  #ul1 li{display: inline-block;width: 60px;line-height: 30px;text-align: center;
   border: 1px solid #999;border-bottom: none;margin-left: 5px;}
  #ul1 li:hover{cursor: pointer;}
  #ul1 li.active{border-top: 2px solid #8B4513;border-bottom: solid 2px #ffffff;}
  #tab-list div{border: 1px solid #7396B8;border-top: none;}
  #tab-list div li{height: 30px;line-height: 30px;text-indent: 8px;}
  .show{display: block;}.hide{display: none;}
 </style>
 <script type="text/javascript">
  window.onload=function(){
   var ul1=document.getElementById('ul1');
   var aLi=ul1.getElementsByTagName('li');
   var oDiv=document.getElementById('tab-list');
   var aDiv=oDiv.getElementsByTagName('div');
   var timer=null;
   for(var i=0;i<=aLi.length;i++){
    aLi[i].id=i;
    aLi[i].onmouseover=function(){
     var that=this;//用that这个变量来引用当前滑过的li
     //如果存在准备执行的定时器,立即清除,只能当前停留时间大于500ms时才开始执行(指鼠标快速滑过一个的那一瞬间要清除掉产生的定时器)
     if(timer){
      clearTimeout(timer);
      timer=null;
     }
     //延时半秒执行
     timer=window.setTimeout(function(){
      for(var i=0;i<aLi.length;i++){
       aLi[i].className="";
       aDiv[i].className="hide";
      }
      that.className="active";//之所以不能在这直接引用this是因为setTimeout是window对象,用this的话会指向定时器,所以要在前面定义一个变量
      aDiv[that.id].className="show";
     },500);
    }
   }
  }
 </script>
</head>
<body>
<div id="tab-list">
 <ul id="ul1">
  <li class="active">房产</li><li>家居</li><li>二手房</li>
 </ul>
 <div>
  <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="hide">
  <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="hide">
  <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>

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


# js  # 选项卡  # Vue.js tab实现选项卡切换  # 使用vue.js写一个tab选项卡效果  # js鼠标经过tab选项卡时实现切换延迟  # Vue.js组件tab实现选项卡切换  # 原生js实现选项卡功能  # JS实现的tab切换选项卡效果示例  # JS使用面向对象技术实现的tab选项卡效果示例  # js实现简单的选项卡效果  # js-tab选项卡  # js编写选项卡效果  # 是因为  # 在这  # 要在  # 滑过  # 爱家  # 三居  # 通州  # 中信  # 就像  # 鼠标  # 微软  # 苏州  # 那一  # 如图  # 一个重要  # 美少女  # 大家分享  # 时才  # 北京  # 具体内容 


相关文章: 建站IDE高效指南:快速搭建+SEO优化+自适应模板全解析  网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?  如何快速搭建高效简练网站?  c++ stringstream用法详解_c++字符串与数字转换利器  赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?  香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧  如何在IIS服务器上快速部署高效网站?  安云自助建站系统如何快速提升SEO排名?  建站之星上传入口如何快速找到?  如何在服务器上配置二级域名建站?  如何快速打造个性化非模板自助建站?  制作公司内部网站有哪些,内网如何建网站?  ,南京靠谱的征婚网站?  交易网站制作流程,我想开通一个网站,注册一个交易网址,需要那些手续?  如何构建满足综合性能需求的优质建站方案?  合肥做个网站多少钱,合肥本地有没有比较靠谱的交友平台?  如何用虚拟主机快速搭建网站?详细步骤解析  东莞专业制作网站的公司,东莞大学生网的网址是什么?  建站主机选虚拟主机还是云服务器更好?  如何正确下载安装西数主机建站助手?  如何在香港免费服务器上快速搭建网站?  武汉网站如何制作,黄黄高铁武穴北站途经哪些村庄?  网站制作话术技巧,网站推广做的好怎么话术?  西安大型网站制作公司,西安招聘网站最好的是哪个?  如何在Windows服务器上快速搭建网站?  在线教育网站制作平台,山西立德教育官网?  北京营销型网站制作公司,可以用python做一个营销推广网站吗?  东莞市网站制作公司有哪些,东莞找工作用什么网站好?  C#如何使用XPathNavigator高效查询XML  制作假网页,招聘网的薪资待遇,会有靠谱的吗?一面试又各种折扣?  如何在新浪SAE免费搭建个人博客?  建站之星北京办公室:智能建站系统与小程序生成方案解析  如何在景安云服务器上绑定域名并配置虚拟主机?  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  天津个人网站制作公司,天津网约车驾驶员从业资格证官网?  高端智能建站公司优选:品牌定制与SEO优化一站式服务  如何用景安虚拟主机手机版绑定域名建站?  MySQL查询结果复制到新表的方法(更新、插入)  沈阳制作网站公司排名,沈阳装饰协会官方网站?  如何通过网站建站时间优化SEO与用户体验?  移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  动图在线制作网站有哪些,滑动动图图集怎么做?  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  高防服务器租用指南:配置选择与快速部署攻略  广州顶尖建站服务:企业官网建设与SEO优化一体化方案  智能起名网站制作软件有哪些,制作logo的软件?  建站之星与建站宝盒如何选择最佳方案?  ,有什么在线背英语单词效率比较高的网站?  网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?  怎么将XML数据可视化 D3.js加载XML 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。