jquery编写Tab选项卡滚动导航切换特效


Posted in Javascript onJuly 17, 2020

本文实例为大家分享jquery编写Tab选项卡切换特效,供大家参考,具体内容如下

效果说明:点击tab导航,页面滑动到下方相应板块。并且当页面通过鼠标滚动下去时,上方的tab也可以自动切换到当前位置的板块上。

jquery编写Tab选项卡滚动导航切换特效

jquery编写Tab选项卡滚动导航切换特效

代码说明:js中对两个动作分别写,一个是tab点击下滑到相应板块位置;一个是鼠标滚动下去的时候tab判定当前页面滚动高度切换tab。
js:

$(document).ready(function(){ 
 $('.switch-tab>li').click(function(){
  var s=$('.switch-tab>li').index(this);
  $('body,html').animate({scrollTop:$('.tab-content>.tab-panel:eq('+s+')').offset().top-50},200);
 });

 var DT=$('.switch-tab').offset().top;
 $(window).scroll(function(){
  var wt=$(window).scrollTop(),l=$('.tab-content>.tab-panel'),s=l.length-1;
  if(wt<DT||wt>=l.last().offset().top+l.last().height()+50){
   $('.switch-tab').removeClass('fixed');
   $('.switch-tab>li:first').addClass('active').siblings().removeClass('active');
  }else{
   $('.switch-tab').addClass('fixed');
   for(var i=0;i<s;i++){
    if(wt>=parseInt(l.eq(i).offset().top-50)&&wt<parseInt(l.eq(i+1).offset().top-50)){
     s=i;
     break;
    }
   }
   $('.switch-tab>li:eq('+s+')').addClass('active').siblings().removeClass('active');
  }
 });
});

html:

<div class="switch-nav">
 <ul class="switch-tab">
  <li><a href="javascript:; ">拉托红酒</a></li>
  <li><a href="javascript:; ">法国酒庄风情</a></li>
  <li><a href="javascript:; ">红酒包装</a></li>
  <li><a href="javascript:; ">个性定制</a></li>
 </ul>
</div>

<div class="tab-content">
 <div class="tab-panel" id="cpxq">
  1111
 </div>
 <div class="tab-panel" id="cpxq">
  222
 </div>
 <div class="tab-panel" id="cpxq">
  333
 </div>
 <div class="tab-panel" id="cpxq">
  444
 </div>
</div>

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

Javascript 相关文章推荐
Jquery 弹出层插件实现代码
Oct 24 Javascript
Extjs TimeField 显示正常时间格式的代码
Jun 28 Javascript
js 幻灯片的实现
Dec 06 Javascript
jquery判断RadioButtonList和RadioButton中是否有选中项示例
Sep 29 Javascript
一个不错的js html页面倒计时可精确到秒
Oct 22 Javascript
js与css实现弹出层覆盖整个页面的方法
Dec 13 Javascript
jQuery实现的多屏图像图层切换效果实例
May 07 Javascript
浅析jquery与checkbox的checked属性的问题
Apr 27 Javascript
解决JS内存泄露之js对象和dom对象互相引用问题
Jun 25 Javascript
详解10分钟学会vue滚动行为
Sep 21 Javascript
解决vue axios的封装 请求状态的错误提示问题
Sep 25 Javascript
浅谈Express.js解析Post数据类型的正确姿势
May 30 Javascript
js仿QQ中对联系人向左滑动、滑出删除按钮的操作
Apr 07 #Javascript
jQuery实现简单滚动动画效果
Apr 07 #Javascript
基于javascript bootstrap实现生日日期联动选择
Apr 07 #Javascript
原生js制作日历控件实例分享
Apr 06 #Javascript
基于HTML模板和JSON数据的JavaScript交互(移动端)
Apr 06 #Javascript
JavaScript中实现无缝滚动、分享到侧边栏实例代码
Apr 06 #Javascript
jQuery实现内容定时切换效果完整实例
Apr 06 #Javascript
You might like
PHP自定义函数收代码
2010/08/01 PHP
PHP延迟静态绑定示例分享
2014/06/22 PHP
PHP实现递归复制整个文件夹的类实例
2015/08/03 PHP
Laravel5.* 打印出执行的sql语句的方法
2017/07/24 PHP
根据json字符串生成Html的一种方式
2013/01/09 Javascript
Javascript中Date类型和Math类型详解
2016/02/27 Javascript
浅谈JavaScript中小数和大整数的精度丢失
2016/05/31 Javascript
jQuery File Upload文件上传插件使用详解
2016/12/06 Javascript
vue-dialog的弹出层组件
2020/05/25 Javascript
js中的DOM模拟购物车功能
2017/03/22 Javascript
详解webpack 入门总结和实践(按需异步加载,css单独打包,生成多个入口文件)
2017/06/20 Javascript
JS点击图片弹出文件选择框并覆盖原图功能的实现代码
2017/08/25 Javascript
jQuery实现的简单前端搜索功能示例
2017/10/28 jQuery
webpack实用小功能介绍
2018/01/02 Javascript
Vue官网todoMVC示例代码
2018/01/29 Javascript
Nodejs模块载入运行原理
2018/02/23 NodeJs
[04:09]2014DOTA2国际邀请赛Ti西雅图 历届冠军相继出局 BBC综述今日比赛
2014/07/20 DOTA
使用Python标准库中的wave模块绘制乐谱的简单教程
2015/03/30 Python
基于scrapy实现的简单蜘蛛采集程序
2015/04/17 Python
python+selenium+autoit实现文件上传功能
2017/08/23 Python
python模拟表单提交登录图书馆
2018/04/27 Python
让代码变得更易维护的7个Python库
2018/10/09 Python
Python Scapy随心所欲研究TCP协议栈
2018/11/20 Python
pymongo中group by的操作方法教程
2019/03/22 Python
18个Python脚本可加速你的编码速度(提示和技巧)
2019/10/17 Python
Puritan’s Pride(普丽普莱)官方网站:美国最大最全的保健品公司之一
2016/10/23 全球购物
夏洛特和乔治婴儿和儿童时装精品店:Charlotte and George
2018/06/06 全球购物
印度购买眼镜和太阳镜网站:Coolwinks
2018/09/26 全球购物
IFCHIC台湾:欧美国际设计师品牌
2019/05/18 全球购物
会计毕业生自荐信
2013/11/21 职场文书
车间调度岗位职责
2013/11/30 职场文书
《菜园里》教学反思
2014/04/17 职场文书
2014年军人思想汇报范文
2014/10/12 职场文书
实习单位证明范例
2014/11/17 职场文书
2015年营业员工作总结
2015/04/23 职场文书
学雷锋献爱心倡议书
2015/04/27 职场文书