利用JS实现悬浮导航的隐藏和显示
利用JS实现悬浮导航的隐藏和显示
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
开发工具与关键技术: DW和JavaScript
作者:韩日九儿
撰写时间:2021/5/27
一.实现悬浮导航隐藏和显示的思路。
1.你如果想实现某元素的隐藏和显示,那么就要设置某元素的定位才可以实现。
2.下面是实现悬浮导航隐藏和显示的css样式,其中id为#navbg的元素我给了它固定位。
3.此时的悬浮导航隐藏和显示是一瞬间的,所以我给了它动画效果,让它有动画过渡效果。
4. 实现悬浮导航隐藏和显示的css样式可自己设置。
5.下面是实现悬浮导航隐藏和显示的HTML构造,可以跟上图结合思考。
6.下面是JavaScript样式。
7.先获取悬浮导航的元素,给页面绑定加载事件,然后获取sessionStorage中的数据(下面可参考),再做当前滚轮位置和滚轮滚动后的位置的比较,如获取sessionStorage中的数据值nowScrollTop不是空值,如果nowScrollTop值大于零,则把id为#oNavbg的Top值赋为-37px,最后又把nowScrollTop赋给oldScrollTop,起到更新oldScrollTop值。
8.下面是滚动条的滚动事件。
9.滚轮事件是关键的,主要是通过获得滚动条的当前位置,然后跟设定的值来比较大小,从而改变id为#oNavbg元素的Top值,来实现悬浮导航的隐藏和显示。
10.最后把新的值赋给旧的值来实现更新值。
11.这是当页面刷新时,把页面刷新前滚动条位置的值记录下来,然后存储在sessionStorage[“scrollTop”]中。
12.scrollTop可以传入新的值。
13.页面刚刷新时的视图,滚动条在最上端,悬浮导航属于显示状态。
14.当滚动条滚动到指定的范围时,悬浮导航进行隐藏,滚动条的变化如图。
15. 当滚动条向上滚动时,悬浮导航进行显示,滚动条的变化如图。
16.这是我所学到的利用JS实现悬浮导航的隐藏和显示的操作,所以我要分享给你们,希望可以帮助到你们。
以上就是我的分享,新手上道,请多多指教。
利用JS实现悬浮导航的隐藏和显示相关推荐
- js设置控件的隐藏与显示的两种方法
js设置控件的隐藏与显示的两种方法: js设置控件的隐藏与显示,设置控件style的display和visibility属性就可以了. 用JavaScript隐藏控件的方法有两种,分别是通过设置控件的 ...
- iOS 导航栏隐藏和显示
1: 导航栏隐藏.显示之间跳转 iOS 导航栏对于隐藏造成的动画 可以通过在 viewWillAppear 和 viewWillDisappear 来设置完成 - (void)viewWillAppe ...
- js控制页面元素的隐藏与显示
2019独角兽企业重金招聘Python工程师标准>>> <body> <div> <button οnclick='javascript:Layer ...
- html中鼠标悬浮显示与隐藏,css鼠标悬浮控制元素隐藏与显示
在网页开发中经常有需求是鼠标移动到一个元素A身上时,另外一个元素B显示. 如下图 当鼠标移到图片上时,相关的描述从下方显示出来. css实现原理与情景: A 是 B 的父元素 B 默认隐藏 B{opa ...
- js控制html元素的隐藏和显示
方法一: document.getElementById("ElementId").style.visibility="hidden"; document.ge ...
- 鼠标悬浮控制元素隐藏与显示 - css中鼠标的hover状态
需求:当鼠标移动到一个元素A身上时,另外一个元素B显示. 实现原理: A元素与B元素有一个相同的父级. B元素默认隐藏,A元素默认显示. 当鼠标移动到A元素身上时,也可以看做是移动到了A元素的父级身上 ...
- iOS11导航栏隐藏
第一种做法 -注意这里一定要用动画的方式隐藏导航栏,这样在使用滑动返回手势的时候效果最好,和上面动图一致.这样做有一个缺点就是在切换tabBar的时候有一个导航栏向上消失的动画. - (void)v ...
- 点击事件div的隐藏和显示
按照图片步骤来做 1.先设置文字隐藏和显示. 2.在设置div和类. 3.设置完样式之后设置css的div. 4.上面的的设置隐藏和显示的div的宽和高and颜色. 5.设置js样式,第一设置隐藏和显 ...
- js实现鼠标悬浮元素出现/隐藏效果
参考慕课网视频:https://www.imooc.com/video/2879 实现效果比较简单,实现方法也不难,但有些细节需要注意. 最终效果如图: 鼠标移到"分享"上方时,粉 ...
最新文章
- spring cloud连载第二篇之Spring Cloud Config
- 使用过滤器(Filter)解决请求参数中文乱码问题(复杂方式)
- Jenkins+Gradle+Git+Pyger+二维码搭建Android自动打包平台
- NIPS 2017 | 线上分享第一期:似自然梯度的优化算法KFAC与强化学习算法ACKTR
- 微软Build2021今日召开,共同期待VS2022+.NET6!
- 在Azure Container Service创建Kubernetes(k8s)群集运行ASP.NET Core跨平台应用程序
- 全局变量,extern和static以及命名空间的区别
- 吉大15秋学期计算机,吉大15秋学期《计算机应用基础》在线作业二.docx
- JavaScript常用验证代码(正则表达式)(转自cnblogs)
- oc 协议 回调 静态成员_OC中特性、静态成员(static)以及协议的基本知识
- python pymysql实例_Python使用pymysql模块操作mysql增删改查实例分析
- android中bundle的使用
- pb语言是什么计算机语言,pb编程语言
- Oracle 11g企业版下载
- Tensorflow入门之 Win10 运行 linux 子系统
- django错误-models.E028:::同一个表名在多个Model的db_table中使用
- Solr面试回答思路
- Failed at the react-admin_client@0.1.0 start script、react-app-rewired : command not found
- 中地恒达振弦信号采集仪MCU采集模块
- GE 开放操作系统 Predix,有望成工业互联网事实标准