JS实现吸顶特效
本文实例为大家分享了JS实现吸顶特效的具体代码,供大家参考,具体内容如下
知识点
1.scroll家族和offset家族的结合运用
2.当nav的offsetTop大于屏幕卷去高度的时候,进行吸顶
3.添加一个固定类,如果满足条件,为nav加类名
运行效果
滚动页面时,保证导航栏吸顶
代码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> <style> *{margin: 0;padding: 0;list-style: none;border:none} img{vertical-align: top;width: 100%;} section{width: 70%;margin: 0 auto;} .nav{position: fixed;left: 0;top: 0;width: 100%} </style> </head> <body> <header id="head"> <img src="images/top.png" alt=""> </header> <nav id="nav"> <img src="images/nav.png" alt=""> </nav> <section> <img src="images/body01.png" alt=""> <img src="images/body02.png" alt=""> </section> <script src="../../MyTools/MyTools.js"></script> <script> window.addEventListener('load',function (ev) { // 1. 求出头部高度 var navTopHeight = myTool.$('nav').offsetTop; // 2. 监听页面滚动 window.addEventListener('scroll',function (ev1) { var scrollTopHeight = myTool.scroll().top; // 2.1 判断 if(scrollTopHeight >= navTopHeight){ myTool.addClassName(myTool.$('nav'),'nav') }else{ myTool.removeClassName(myTool.$('nav'),'nav'); } }) }) </script> </body> </html>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
原生js实现吸顶效果
实现思路如下: 1. div初始居普通文档流中 2. 给window添加scroll事件(可事件节流),获取div的offset的top值,滚动时scrollTop值和top比较,当到达top时给div添加一个fixed的class使其固定 3. 向上滚动时当到达div初始top时则删除fixed的class,此时div又回到普通文档流中 4. fixed样式非IE6浏览器使用position:fixed,IE6使用position:absolute和IE expression 效果图: 代码如
-
实现一个 Vue 吸顶锚点组件方法
前言 近期产品小哥哥给我提了一个新需求,在一个页面的滚动区中添加一组锚点定位按钮,点击按钮将对应的元素显示在页面的可视区中.当按钮组超出页面可视区的时候将其固定在滚动区域的头部,当滚动区滚动时,高亮距离滚动区顶部最近的元素所匹配的锚点按钮. 拆分功能点 现在我们已经明确需求了,接下来我们总结一下这个需求有哪些功能点: 按钮组要有吸顶效果 点击按钮要有锚点定位功能 滚动内容区需要找到对应的按钮并高亮 吸顶组件 要做一个吸顶效果最简单的方式是将 css 的 position 属性设置为 sticky
-
vue实现吸顶、锚点和滚动高亮按钮效果
因公司后台管理系统很多功能技术老旧,最近在用vue重构公司的后台管理系统,在做商品管理添加商品这一块,借鉴淘宝的添加商品的交互,需要实现一个简单的吸顶.锚点和滚动高亮按钮的效果. 需求 滚动页面到顶部,实现某元素固定到顶部效果 点击某个按钮,页面滚动到相应的位置 滚动页面,当到达某个位置时,高亮对应的相关按钮 元素吸顶实现方式 关于元素吸顶效果,通过查阅相关资料和相关测试,有三种方式(还有一种是jquery的方法,这里就不介绍了) 一.使用position:sticky 1. 什么是positi
-
js实现导航吸顶效果
话不多说,请看代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" /> <title&
-
微信小程序实现吸顶效果
最开始的时候,在小程序中实现吸顶效果,开发工具看起来还挺好的,但是在真机上就会有问题了. 原因是我不停的去 setData 会导致操作反馈延迟严重,无法及时将操作处理结果及时传递到视图层. 后面就对代码进行了调整,避免不停的去setData 效果图 吸顶前 吸顶后 代码部分 wxml <view style="width: 90%; height: 300rpx; background: #f0f0f0; margin: 30rpx auto;"></view>
-
JS实现吸顶特效
本文实例为大家分享了JS实现吸顶特效的具体代码,供大家参考,具体内容如下 知识点 1.scroll家族和offset家族的结合运用 2.当nav的offsetTop大于屏幕卷去高度的时候,进行吸顶 3.添加一个固定类,如果满足条件,为nav加类名 运行效果 滚动页面时,保证导航栏吸顶 代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> &l
-
微信小程序实现吸顶特效
本文实例为大家分享了微信小程序实现吸顶特效的具体代码,供大家参考,具体内容如下 效果图 wxml代码: <view class="xiding {{oneFixed}}" id="tab"> <van-row custom-class="goods_row" > <van-col span="12" custom-class="title-1"> 食疗方法 </va
-
浅谈react.js中实现tab吸顶效果的问题
在react项目开发中有一个需求是,页面滚动到tab所在位置时,tab要固定在顶部. 实现的思路其实很简单,就是判断当滚动距离scrollTop大于tab距离页面顶部距离offsetTop时,将tab的position变为fixed. 在react中,我在state中设置一个navTop属性,切换这个属性的值为true或者false,然后tab标签使用classnames()这个方法来利用navTop的值添加类名fixed. 一开始我是这样写的: import cs from 'classnam
-
js实现多个标题吸顶效果
对于导航的吸顶效果,pc端和移动端的需求可能有些差异.在pc端,我们通常只需要一个顶部导航:在移动端,在滑动页面的时候,更需要多个标题的吸顶(例如地区的选择,需要将省份吸顶). 单个标题吸顶和多个标题吸顶的区别在于:多个标题吸顶需要确定一个高度范围,在这个范围中只能有一个标题吸顶,其他都是固定效果. 一.页面布局及样式 此处为了测试效果,用了几个重复的section标签,大家根据实际需求编写布局和样式. <body> <ul id="container"> &l
-
JS实现网站吸顶条
本文实例为大家分享了JS实现网站吸顶条的具体代码,供大家参考,具体内容如下 今天写一个关于网站中吸顶条的思路 1.吸顶条就是在网页移动到一定距离的时候,让某个内容,固定显示在一个位置 2.获取网页中滚动条的滚动距离 3.判断要显示的内容在滚动条,滚动到一定距离后,让他显示 下面是代码部分 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <
-
js实现移动端吸顶效果
今天来简单的写一个吸顶,供大家参考,具体内容如下 先罗列一下吸顶需要使用到的属性 ** scrollTop 获取当前滚动的距离(也就是盒子距离顶部的距离) offsetTop 盒子距离顶部的高度 offsetHeight 盒子自身的高度 scrollY 滚动的距离 ** 想要写出一个吸顶 一定要先明白这几个属性哦(当然了,他也很简单,相信您看完会有一定的收获) 根据图片中的思路来写: <!DOCTYPE html> <html lang="en"> <he
-
vue中多路由表头吸顶实现的几种布局方式
vue项目多路由表头吸顶实现的几种布局方式 因为项目较大,有五个界面,每个界面有四个子组件,每个子组件都有一个table表格,需求是每个界面的每个table滚动到顶端表头吸顶,所以尝试用vux做这种需求, 一.先聊js. A.首先在vux可以这样设置. 1.在state文件中设置状态. techo:{ partsFixed:false, repairFixed:false, mateFixed:false, outRepairFixed:false }//吸顶状态 2.在action中commi
-
react-native滑动吸顶效果的实现过程
前言 最近公司开发方向偏向移动端,于是就被调去做RN(react-native),体验还不错,当前有个需求是首页中间吸顶的效果,虽然已经很久没写样式了,不过这种常见样式应该是so-easy,没成想翻车了,网上搜索换了几个方案都不行,最后去github上复制封装好的库来实现,现在把翻车过程记录下来. 需求效果 翻车过程 第一种方案 失败 一开始的思路是这样的,大众思路,我们需要监听页面的滚动状态,当页面滚动到要吸顶元素所处的位置的时候,我们设置它为固定定位,不过很遗憾,RN对于position属性
随机推荐
- 详解基于Bootstrap+angular的一个豆瓣电影app
- PowerShell管道入门必看篇(管道例子大全)
- 详解C++编程中的私有继承和公有继承
- PHP通用分页类page.php[仿google分页]
- php基于ob_start(ob_gzhandler)实现网页压缩功能的方法
- php获得网站访问统计信息类Compete API用法实例
- javascript asp教程第十二课---session对象
- C#中38个常用运算符的优先级的划分和理解
- Ajax验证用户名或昵称是否已被注册
- 基于java中的PO VO DAO BO POJO(详解)
- Java数据对象JDO 2.0查询语言的特点
- jquery实现鼠标拖拽滑动效果来选择数字的方法
- Microsoft AntiSpyware微软出品的反间谍软件
- CentOS(Linux)下的apache服务器配置与管理方法分享
- javaweb判断当前请求是否为移动设备访问的方法
- Android判断包名和类名是否存在的方法
- Java实现五子棋网络版
- 一个通用的Java分页基类代码详解
- vux-scroller实现移动端上拉加载功能过程解析
- Vue引入jquery实现平滑滚动到指定位置