本文实例为大家分享了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编写选项卡效果
# 是因为
# 在这
# 要在
# 滑过
# 爱家
# 三居
# 通州
# 中信
# 就像
# 鼠标
# 微软
# 苏州
# 那一
# 如图
# 一个重要
# 美少女
# 大家分享
# 时才
# 北京
# 具体内容
相关文章:
MySQL查询结果复制到新表的方法(更新、插入)
如何用5美元大硬盘VPS安全高效搭建个人网站?
深圳网站制作费用多少钱,读秀,深圳文献港这样的网站很多只提供网上试读,但有些人只要提供试读的文章就能全篇下载,这个是怎么弄的?
百度网页制作网站有哪些,谁能告诉我百度网站是怎么联系?
Swift开发中switch语句值绑定模式
网站设计制作企业有哪些,抖音官网主页怎么设置?
建站之家VIP精选网站模板与SEO优化教程整合指南
h5在线制作网站电脑版下载,h5网页制作软件?
如何选择可靠的免备案建站服务器?
教学网站制作软件,学习*后期制作的网站有哪些?
招商网站制作流程,网站招商广告语?
如何在建站宝盒中设置产品搜索功能?
惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?
c# 服务器GC和工作站GC的区别和设置
微信小程序制作网站有哪些,微信小程序需要做网站吗?
清除minerd进程的简单方法
制作销售网站教学视频,销售网站有哪些?
如何在阿里云虚拟主机上快速搭建个人网站?
武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?
制作国外网站的软件,国外有哪些比较优质的网站推荐?
香港服务器如何优化才能显著提升网站加载速度?
个人摄影网站制作流程,摄影爱好者都去什么网站?
如何快速搭建二级域名独立网站?
如何在橙子建站上传落地页?操作指南详解
已有域名如何免费搭建网站?
营销式网站制作方案,销售哪个网站招聘效果最好?
如何选择建站程序?包含哪些必备功能与类型?
网站制作壁纸教程视频,电脑壁纸网站?
免费ppt制作网站,有没有值得推荐的免费PPT网站?
javascript基本数据类型及类型检测常用方法小结
深圳 网站制作,深圳招聘网站哪个比较好一点啊?
高防网站服务器:DDoS防御与BGP线路的AI智能防护方案
香港服务器网站生成指南:免费资源整合与高速稳定配置方案
建站之星2.7模板:企业网站建设与h5定制设计专题
如何在建站主机中优化服务器配置?
如何在Golang中实现微服务服务拆分_Golang微服务拆分与接口管理方法
宝塔建站助手安装配置与建站模板使用全流程解析
微信小程序 input输入框控件详解及实例(多种示例)
建站三合一如何选?哪家性价比更高?
建站之星×万网:智能建站系统+自助建站平台一键生成
如何基于云服务器快速搭建个人网站?
网站制作企业,网站的banner和导航栏是指什么?
建站之星客服服务时间及联系方式如何?
建站主机默认首页配置指南:核心功能与访问路径优化
网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?
建站之星如何开启自定义404页面避免用户流失?
网站图片在线制作软件,怎么在图片上做链接?
湖北网站制作公司有哪些,湖北清能集团官网?
桂林网站制作公司有哪些,桂林马拉松怎么报名?
成都网站制作报价公司,成都工业用气开户费用?
*请认真填写需求信息,我们会在24小时内与您取得联系。