分享好友 教程首页 教程搜索 频道列表

页面刷新后,tab记住刷新前位置

2019-02-10 10:5113510
+关注29
核心提示:页面刷新后,对于有tab按钮的页面,每次刷新都默认回到第一个,自己都烦了,想想是...

页面刷新后,对于有tab按钮的页面,每次刷新都默认回到第一个,自己都烦了,想想是别人使用,估计会更烦。于是就百度踩坑呀。

效果图镇楼:

主要使用到Session Storage,浏览器缓存原理。

打开调试器:

能看到缓存值:

下面我要强迫自己写demo了:

<div class="demo">
	<ul class="tab-hd clearfix">
		<li class="active">基本信息</li>
		<li>课程详情</li>
		<li>视频管理</li>
		<li>讲义管理</li>
		<li>习题管理</li>
	</ul>
	<div class="tab-bd" style="display: block;">这是基本信息</div>
	<div class="tab-bd">这是课程详情</div>
	<div class="tab-bd">这是视频管理</div>
	<div class="tab-bd">这是讲义管理</div>
	<div class="tab-bd">这是习题管理</div>
</div>

页面样式:

<style>
	body,h1,h2,h3,h4,h5,h6,p,dl,dt,dd,ul,ol,form,input,textarea,th,td,select{ margin:0; padding:0; }
	body{ font-family: 'Microsoft Yahei',sans-serif,arial; font-size: 14px; line-height: 150%; color: #333;}
	li{ list-style: none; }
	.clearfix{ *zoom:1; }
	.clearfix:after{ display: block; content:""; height: 0; clear: both; 1font-size: 0; overflow: hidden; visibility: hidden; }
	.demo{ margin-left: 100px; margin-top: 100px; width: 450px; border: 1px solid #eaeaea; }
	.tab-hd li{ width: 90px; height: 30px; line-height: 30px; background: #f2f2f2; text-align: center; float: left; cursor: pointer; }
	.tab-hd li.active{ background: #04a7ec; color: #fff; }
	.tab-bd{ font-size: 16px; display: none; height: 300px; line-height: 300px; text-align: center;}
</style>

js:

<script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"></script>
<script>
	$(function(){
 
		var getIndexNum = sessionStorage.getItem("tabLiNum");
		$(".tab-hd li").eq(getIndexNum).addClass('active').siblings().removeClass('active');
		$(".tab-bd").eq(getIndexNum).show().siblings(".tab-bd").hide();
 
		$(".tab-hd li").on('click',function(){
 
			$(this).addClass('active').siblings().removeClass('active');
			$(".tab-bd").eq($(this).index()).show().siblings(".tab-bd").hide();
				
			var indexNum = $(this).index(); //所点击li的索引值
			console.log("当前li的下标为:",indexNum); //打印索引值
 
			sessionStorage.setItem("tabLiNum",indexNum); //将(下标名称,索引值)存入session中
		})
 
	})
</script>

这下怎么刷新也不怕了!!!快去测试吧

本文标签: #tab #刷新 #不变 #位置
免责声明:凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。
生成海报
您可能在找更多

Sortable.js:功能强大的JavaScript拖拽库,不依赖JS

    JS库介绍Sortable.js一个功能强大的JavaScript 拖拽库!!!用于在网页上创建可拖放和可排序的元素。它提供了简单而强大的 API,使开发人员能够轻松地实现拖放功能,并允许用户通过拖放来重新排序列表、网格和其他元

网络转载 JavaScript教程2024-04-28

jquery拖拽排序,针对后台列表table进行拖拽排序(测试有用)

    现在很多后台列表为了方便均使用拖拽排序的功能,对列表进行随意的排序。话不多说 ,我在网上找了一些demo,经过对比,现在把方便实用的一个demo列出来,基于jqueryUI.js先上html代码,很简单:

网络转载 JavaScript教程2023-03-16

jQuery-ui插件sortable实现自由拖动排序

    自行用代码测试

网络转载 JavaScript教程2023-03-15

解决TAB切换需拉一下才触发Lazyload懒加载方法

    处理方法就是通过给TAB绑定事件,监控TAB的切换时触发Lazyload懒加载。代码如下

小黑 PC端模板制作2022-09-03

关于touchslider.js滑动切换页面的使用

    需用代码测试

网络转载 移动端模板制作2022-03-19

下一篇
我来说两句
抢沙发