JS实现吸顶特效


Posted in Javascript onJanuary 08, 2020

本文实例为大家分享了JS实现吸顶特效的具体代码,供大家参考,具体内容如下

知识点

1.scroll家族和offset家族的结合运用
2.当nav的offsetTop大于屏幕卷去高度的时候,进行吸顶
3.添加一个固定类,如果满足条件,为nav加类名

运行效果

JS实现吸顶特效

滚动页面时,保证导航栏吸顶

JS实现吸顶特效

代码

<!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>

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

Javascript 相关文章推荐
HTML中不支持静态Expando的元素的问题
Mar 08 Javascript
DOM Scripting中的图片切换[兼容Firefox]
Jun 12 Javascript
jQuery事件 delegate()使用方法介绍
Oct 30 Javascript
基于Bootstrap的UI扩展 StyleBootstrap
Jun 17 Javascript
前端实现文件的断点续传(前端文件提交+后端PHP文件接收)
Nov 04 Javascript
微信小程序 欢迎页面的制作(源码下载)
Jan 09 Javascript
实例解析js中try、catch、finally的执行规则
Feb 24 Javascript
vue添加class样式实例讲解
Feb 12 Javascript
我要点爆”微信小程序云开发之项目建立与我的页面功能实现
May 26 Javascript
Node.js 实现抢票小工具 &amp; 短信通知提醒功能
Oct 22 Javascript
Vue+tracking.js 实现前端人脸检测功能
Apr 16 Javascript
React 条件渲染最佳实践小结(7种)
Sep 27 Javascript
vue项目中在可编辑div光标位置插入内容的实现代码
Jan 07 #Javascript
electron+vue实现div contenteditable截图功能
Jan 07 #Javascript
解决vue elementUI中table里数字、字母、中文混合排序问题
Jan 07 #Javascript
Vue程序化的事件监听器(实例方案详解)
Jan 07 #Javascript
微信小程序服务器日期格式化问题
Jan 07 #Javascript
webpack 最佳配置指北(推荐)
Jan 07 #Javascript
微信小程序接入腾讯云验证码的方法步骤
Jan 07 #Javascript
You might like
Apache2 httpd.conf 中文版
2006/11/17 PHP
mysql 的 like 问题,超强毕杀记!!!
2007/01/18 PHP
PHP使用PDO实现mysql防注入功能详解
2019/12/20 PHP
一个加密JavaScript的开源工具PACKER2.0.2
2006/11/04 Javascript
用JavaScript将从数据库中读取出来的日期型格式化为想要的类型。
2009/08/15 Javascript
jqeury eval将字符串转换json的方法
2011/01/20 Javascript
解决extjs grid 不随窗口大小自适应的改变问题
2014/01/26 Javascript
jQuery使用addClass()方法给元素添加多个class样式
2015/03/26 Javascript
Jquery判断radio、selelct、checkbox是否选中及获取选中值方法总结
2015/04/15 Javascript
js仿苹果iwatch外观的计时器代码分享
2015/08/26 Javascript
浅析AngularJS中的指令
2016/03/20 Javascript
jQuery 监控键盘一段时间没输入
2016/04/22 Javascript
vue.js单页面应用实例的简单实现
2017/04/10 Javascript
Bootstrap多级菜单的实现代码
2017/05/23 Javascript
nodejs socket实现的服务端和客户端功能示例
2017/06/02 NodeJs
Vue框架之goods组件开发详解
2018/01/25 Javascript
vue主动刷新页面及列表数据删除后的刷新实例
2018/09/16 Javascript
vue-router 手势滑动触发返回功能
2018/09/30 Javascript
如何使用 vue + d3 画一棵树
2018/12/03 Javascript
vue-cli构建vue项目的步骤详解
2019/01/27 Javascript
vue使用el-upload上传文件及Feign服务间传递文件的方法
2019/03/15 Javascript
vue项目出现页面空白的解决方案
2019/10/31 Javascript
[01:19:46]DOTA2-DPC中国联赛 正赛 SAG vs DLG BO3 第一场 2月28日
2021/03/11 DOTA
python的dict,set,list,tuple应用详解
2014/07/24 Python
Python列表append和+的区别浅析
2015/02/02 Python
python3操作注册表的方法(Url protocol)
2020/02/05 Python
python selenium自动化测试框架搭建的方法步骤
2020/06/14 Python
JAVA SWT事件四种写法实例解析
2020/06/05 Python
Python selenium爬虫实现定时任务过程解析
2020/06/08 Python
Matplotlib animation模块实现动态图
2021/02/25 Python
Supersmart英国:欧洲市场首批食品补充剂供应商之一
2018/05/05 全球购物
喜之郎果冻广告词
2014/03/20 职场文书
小班幼儿评语大全
2014/04/30 职场文书
赔偿协议书范本
2014/09/12 职场文书
护士个人总结范文
2015/02/13 职场文书
python 离散点图画法的实现
2022/04/01 Python