jQuery实现电梯导航模块
编程学习 2021-07-04 14:07www.dzhlxh.cn编程入门
这篇文章主要为大家详细介绍了jQuery实现电梯导航模块,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了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')
})
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持狼蚁SEO。
上一篇:jQuery实现本地存储
下一篇:jQuery实现tab栏切换效果
编程语言
- ThinkPad 笔记本如何调节LCD屏幕亮度
- Dreamweaver制作网页打开特效教程
- Win10 Mobile 10586升级后无限重启怎么办 硬重启帮您
- Win8系统提示音频设备有问题有一个或多个音频服
- Xbox One版Win10首个预览版9月份发布
- 如何在textarea文本输入区内实现换行
- Win10 Build 9901系统更新 预览版新版本下载
- McAfee Framework存在远程格式串处理漏洞
- Win10家庭版今日(7月30)正式在中国官方商城开卖
- Win10 Mobile预览版更新完10536.1000后才收到10536.100
- Win10 RS2更新了什么-Win10 RS2最终版本号1704首曝
- Windows7如何查看回收站对应的文件夹有哪些方法
- Win10让Charms栏回归桌面的方法教程
- 取消Windows XP系统开机启动画面的小技巧
- win8系统怎么下载安装USB百兆网卡?
- XP系统下磁盘空间变少了怎么办?XP系统磁盘空间