jQuery实现电梯导航模块


Posted in jQuery onDecember 22, 2020

本文实例为大家分享了jQuery实现电梯导航模块的具体代码,供大家参考,具体内容如下

功能模块

1、当页面滚动到电器的模块, 显示电梯导航
2、点击电梯导航中的 li, 页面滚动到对应的内容区域
3、为当前点击的 li 添加 current 类
4、页面内容滚动到第几个区域, 左侧的电梯导航自动高亮对应的 li
5、为页面滚动设置节流阀(点击 li 时, 不进行第4步判断)

html部分结构

<ul class="sidebar">
  <li>手机模块</li>
  <li>电器模块</li>
  <li>产品模块</li>
  <li>服装模块</li>
  <li>鞋子模块</li>
 </ul>

 <section class="main">

  <div>手机模块</div>
  <div class="model">电器模块</div>
  <div>产品模块</div>
  <div>服装模块</div>
  <div>鞋子模块</div>
</section>

css部分 

* {
  margin: 0;
  padding: 0;
  margin: 0 auto;
 }
 
 div {
  width: 600px;
  height: 600px;
  border: 1px solid red;
 }
 
 li {
  list-style: none;
  border: 1px solid #abcdef;
  cursor: pointer;
 }
 
 .sidebar {
  display: none;
  position: fixed;
  left: 0;
  top: 350px;
  width: 66px;
  height: 200px;
 }
 
 .current {
  background-color: red;
 }

jQuery部分

//节流阀开启
 var flag = true
 //页面滚动事件
 $(window).scroll(function() {
   // 当页面滚动到电器模块侧边栏显示
   $(this).scrollTop() >= $('.model').offset().top ? $('.sidebar').show() : $('.sidebar').hide()
    // 遍历div
   $('.main div').each(function(i, item) {
    if (flag == false) {
     return
    }
    var Top = $(item).offset().top
     // 滚动的距离大于等于当前盒子离顶部的距离
    if ($(window).scrollTop() >= Top) {
    //显示高亮
     $('.sidebar li').eq(i).addClass('current').siblings().removeClass('current')
    }
   })
  })
  //点击让li,出现在对应的位置
  //绑定点击事件,获取索引,获取楼层与顶部的距离,给html添加动画
 $('.sidebar li').click(function() {

  // 节流阀关闭了
  flag = false
   // 改变背景颜色
   // 获取当前的索引值
  var index = $(this).index()
   // 获取当前索引位置上的盒子离顶部的距离
  var top = $('div').eq(index).offset().top
   // 给html添加动画
  $('html,body').animate({
   scrollTop: top

  }, function() {
   flag = true
  })
  //点击显示高亮
  $(this).addClass('current').siblings().removeClass('current')


})

jQuery实现电梯导航模块

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
jQuery插件FusionCharts实现的MSBar3D图效果示例【附demo源码】
Mar 23 jQuery
node.js+jQuery实现用户登录注册AJAX交互
Apr 28 jQuery
jquery版轮播图效果和extend扩展
Jul 18 jQuery
jQuery条件分页 代替离线查询(附代码)
Aug 17 jQuery
(模仿京东用户注册)用JQuery实现简单表单验证,初学者必看
Jan 08 jQuery
jquery在启动页面时,自动加载数据的实例
Jan 22 jQuery
实现jquery放大镜的两种方法
Feb 22 jQuery
jQuery.validate.js表单验证插件的使用代码详解
Oct 22 jQuery
jQuery实现当拉动滚动条到底部加载数据的方法分析
Jan 24 jQuery
解决JQuery的ajax函数执行失败alert函数弹框一闪而过问题
Apr 10 jQuery
jquery实现掷骰子小游戏
Oct 24 jQuery
jQuery实现简单轮播图效果
Dec 27 jQuery
jQuery实现tab栏切换效果
Dec 22 #jQuery
jQuery+ajax实现文件上传功能
Dec 22 #jQuery
jQuery实现动态向上滚动
Dec 21 #jQuery
Jquery+javascript实现支付网页数字键盘
Dec 21 #jQuery
jquery实现淡入淡出轮播图效果
Dec 13 #jQuery
jquery实现拖拽小方块效果
Dec 10 #jQuery
jQuery实现简单弹幕制作
Dec 10 #jQuery
You might like
用PHP读取IMAP邮件
2006/10/09 PHP
php 仿Comsenz安装效果代码打包提供下载
2010/05/09 PHP
PHP Directory 函数的详解
2013/03/07 PHP
用Php编写注册后Email激活验证的实例代码
2013/03/11 PHP
自定义php类(查找/修改)xml文档
2013/03/26 PHP
PHP SFTP实现上传下载功能
2017/07/26 PHP
PHP实现一个按钮点击上传多个图片操作示例
2020/01/23 PHP
Jquery CheckBox全选方法代码附js checkbox全选反选代码
2010/06/09 Javascript
js对象关系图 方便dom操作
2012/03/18 Javascript
jQuery自动切换/点击切换选项卡效果的小例子
2013/08/12 Javascript
js解决select下拉选不中问题
2014/10/14 Javascript
JavaScript中的变量作用域介绍
2014/12/31 Javascript
jQuery form插件之formDdata参数校验表单及验证后提交
2016/01/23 Javascript
js获取iframe中的window对象的实现方法
2016/05/20 Javascript
jQuery EasyUI Tab 选项卡问题小结
2016/08/16 Javascript
JavaScript实现多栏目切换效果
2016/12/12 Javascript
BootStrap便签页的简单应用
2017/01/06 Javascript
JavaScript下拉菜单功能实例代码
2017/03/01 Javascript
Bootstrap进度条实现代码解析
2017/03/07 Javascript
vuex存储token示例
2019/11/11 Javascript
Vue中img的src是动态渲染时不显示的解决
2019/11/14 Javascript
js获取本日、本周、本月的时间代码
2020/02/01 Javascript
[02:55]DOTA2英雄基础教程 发条技师
2013/12/04 DOTA
Python 2.7中文显示与处理方法
2018/07/16 Python
用python 实现在不确定行数情况下多行输入方法
2019/01/28 Python
浅谈Python反射 &amp; 单例模式
2019/03/21 Python
new_zeros() pytorch版本的转换方式
2020/02/18 Python
C++和python实现阿姆斯特朗数字查找实例代码
2020/12/07 Python
寻找完美的房车租赁:RVShare
2019/02/23 全球购物
团员的自我评价
2013/12/01 职场文书
专业幼师实习生自我鉴定范文
2013/12/08 职场文书
骨干教师培训方案
2014/05/06 职场文书
2014年入党积极分子党校培训心得体会
2014/07/08 职场文书
查摆问题自我剖析材料
2014/08/18 职场文书
丽江古城导游词
2015/02/03 职场文书
入党积极分子培养联系人意见
2015/08/12 职场文书