JS实现吸顶特效
程序员文章站
2022-04-11 18:50:41
本文实例为大家分享了js实现吸顶特效的具体代码,供大家参考,具体内容如下
知识点
1.scroll家族和offset家族的结合运用
2.当nav的offsettop大于屏幕卷去高...
本文实例为大家分享了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>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。