博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
-仿京东商城楼梯式导航定位菜单
阅读量:6687 次
发布时间:2019-06-25

本文共 3029 字,大约阅读时间需要 10 分钟。

实现京东商城楼梯式导航定位菜单:滚动定位菜单项和点击定位菜单项!

 

 

涉及知识点:find()、parent()、offset()、scroll()等jQ函数,请自觉复习各种函数!

html代码:

 

1 
2
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35

css代码:

1 #menu{ 2         width:32px;height:360px; 3         position:fixed; 4         top:200px;left:0px; 5         display: none; 6     } 7     #menu ul li{ 8         width:32px;height:32px; 9         list-style-type:none;10         color:#8F8583;11         text-align:center;12         line-height: 32px;13         border-bottom:1px dotted #ddd;14         position:relative;15     }16     #menu ul li span{17         display:block;width:32px;height:32px;18         background:#C81623;19         position:absolute;20         top:0;left:0;21         color:#fff;font-size:12px;22         display: none;23     }24     #menu ul li:hover span{display:block; }25     #menu ul li span.active{color:#C81623;background:#fff;display:block;}26     #content{27         width:1220px;28         margin:0 auto;29     }  30     #footer{width:1220px;height:600px;background:#FE7678;}31     .container{margin:0 auto;}

代码:

1 $(function(){ 2         var _index=0; 3         $("#menu ul li").click(function(){ 4             $(this).find("span").addClass("active").parent().siblings().find("span").removeClass("active"); 5             _index=$(this).index()+1; 6             //通过拼接字符串获取元素,再取得相对于文档的高度 7             var _top=$("#louti"+_index).offset().top; 8             //scrollTop滚动到对应高度 9             $("body,html").animate({scrollTop:_top},500);10         });11         var nav=$("#menu"); //得到导航对象12         var win=$(window); //得到窗口对象13         var sc=$(document);//得到document文档对象。14         win.scroll(function(){15 16           if(sc.scrollTop()>=600){17            $("#menu").show(); 18            //获取滚动元素对应的索引!!!重难点19             var index=Math.floor(sc.scrollTop()/600);20 21             $("#menu ul li span").eq(index-1).addClass("active").parent().siblings().find("span").removeClass("active");22           }else{23            $("#menu").hide();24           }25         });26     });
滚动中常用到的jQ写法: $("body,html").animate({scrollTop:_top},500);

总结:相对来说,这是个蛮有趣的实践案例,但其中用到比较多的函数,结合了本案例比较特殊的html结构设计,需要理清滚动导航时候的条件判断。

 

 

文章来源:http://blog.csdn.net/macanfa/article/details/51449629

 

转载于:https://www.cnblogs.com/xiaomifeng/p/6795361.html

你可能感兴趣的文章
机器人是如何完成避障的?机器人避障解决方案解读
查看>>
通过错误堆栈信息和源码分析错误来源
查看>>
C和C++ 读写文件速度问题
查看>>
layer.mobile 弹出框插件(2.0版)
查看>>
IDC服务品质协议范本留存
查看>>
在 overlay 中运行容器 - 每天5分钟玩转 Docker 容器技术(51)
查看>>
ks.cfg 文件,参数讲解
查看>>
前端MVC框架 EmberJS总结
查看>>
LVS
查看>>
我的友情链接
查看>>
搭建高可用mongodb集群(三)—— 深入副本集内部机制
查看>>
C#基础 条件语句、选择语句和循环语句
查看>>
15款经典图表软件推荐
查看>>
bugzilla安装笔记
查看>>
我的友情链接
查看>>
Office 365 用户指引 3 ——Exchange Online-邮件功能介绍
查看>>
Office 365管理员指引 14——Sharepoint 日历
查看>>
日常Shell处理命令
查看>>
入门到精通pl/sql编程(千里之行始于足下)3篇
查看>>
Keepalived架构高可用的redis数据库缓存服务器
查看>>