jq的tab点击切换,悬停切换,延迟切换

1,使用js获取兄弟节点移除添加来实现tab切换功能

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>tab选项卡点击切换,悬停切换,延迟切换</title>
		<script type="text/javascript" src="js/jquery-2.1.0.js" ></script>
		<style>
			*{margin: 0;padding: 0;}
			li{list-style: none;}
			.tab{width: 498px;border: 1px solid #ccc;height: 100px;overflow: hidden;margin: 50px auto 0;}
			.title{height: 30px;background: #eee;text-align:center;}
			.title li{width: 70px;float: left; line-height: 30px;cursor: pointer;}
			.content{padding: 10px;}
			.content .contentlist{display: none;}
			.content .contentlist:nth-child(1){display: block;}
			.active{background: red;color: #fff;}
		</style>
	</head>
	<body>
		<div class="tab">
			<ul class="title">
				<li class="active">标题一</li>
				<li>标题二</li>
				<li>标题三</li>
			</ul>
			<div class="content">
				<div class="contentlist">内容一</div>
				<div class="contentlist">内容二</div>
				<div class="contentlist">内容三</div>
			</div>
		</div>
		
		<script>
			
			$(function(){
				//tab选项卡点击
				$(".title li").click(function(){  //标题点击
					var index=$(this).index();  //获得当前点击标题的下标
					$(this).addClass("active").siblings().removeClass("active"); //给当前选项添加选中,其他移除选中
					$(".content .contentlist").eq(index).show().siblings().hide();  //对应下标的内容框显示,其他隐藏
				});
				
				
				//tab选项卡悬停
				$(".title li").hover(function(){  
				   //标题悬停
					var index=$(this).index();  //获得当前点击标题的下标
					$(this).addClass("active").siblings().removeClass("active"); //给当前选项添加选中,其他移除选中
					$(".content .contentlist").eq(index).show().siblings().hide();  //对应下标的内容框显示,其他隐藏
				});
				
				
				//tab选项卡延迟切换
				var timer=null;
				$(".title li").hover(function(){
					if(timer){
						clearTimeout(timer);
						timer=null;
					}  //如果定时器存在的话就清除
					var index=$(this).index();  //获得当前点击标题的下标
					timer=setTimeout(function(){
						$(".title li").eq(index).addClass("active").siblings().removeClass("active"); //给当前选项添加选中,其他移除选中
						$(".content .contentlist").eq(index).show().siblings().hide();  //对应下标的内容框显示,其他隐藏
					},1000);
				});
			})
		</script>
	</body>
</html>

2,展示结果如下:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值