JavaScript封装tab切换效果

需求解析:在网页上可能会遇见多个tab切换效果,如果每一个都写一次tab切换的话,比较麻烦,也让代码的体积变大,所以可以封装成一个,哪里需要哪里调用

最终需要实现的效果图

 代码解析:

HTML

<!-- 第一个tab切换-S -->
		<div class="tab-1">
			<div class="tab-1-tit">
				<ul>
					<li>tab1的title-1</li>
					<li>tab1的title-2</li>
					<li>tab1的title-3</li>
				</ul>
			</div>
			<div class="tab-con">
				<div class="tab-item">
					tab-1的内容1
				</div>
				<div class="tab-item">
					tab-1的内容2
				</div>
				<div class="tab-item">
					tab-1的内容3
				</div>
			</div>
		</div>
		<!-- 第一个tab切换-E -->
		<!-- 第二个tab切换-S -->
		<div class="tab-2">
			<div class="tab-2-tit">
				<ul>
					<li>tab2的title-1</li>
					<li>tab2的title-2</li>
					<li>tab2的title-3</li>
				</ul>
			</div>
			<div class="tab-con">
				<div class="tab-item">
					tab-2的内容1
				</div>
				<div class="tab-item">
					tab-2的内容2
				</div>
				<div class="tab-item">
					tab-2的内容3
				</div>
			</div>
		</div>
		<!-- 第二个tab切换-E -->

html模块:因为上面案例的代码太多了,在这我只是给了一个格式,没有写样式

JS模块

$.jstab = function(tab) {
			$(tab).mouseover(function() {
				this_tab = $(this);
				this_tab.addClass("on").siblings().removeClass("on");
				var index = this_tab.index();
				$(tab).parent().parent().parent().find(".tab-con").find(".tab-item").eq(index).show().siblings().hide();
			});

		};

		$.jstab(".tab-1-tit li");
		$.jstab(".tab-2-tit li");

这里用的事件是鼠标移入事件:mouseover 

$.jstab(".tab-1-tit li")

意思就是鼠标移入 .tab-1-tit 下的 li时,给它tab-1下的tab-con 下的tab-item添加class 为 on

第二个同样的道理

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值