js实现移动端吸顶效果
程序员文章站
2022-09-02 09:54:06
今天来简单的写一个吸顶,供大家参考,具体内容如下
先罗列一下吸顶需要使用到的属性
** scrolltop 获取当前滚动的距离(也就是盒子距离顶部的距离)
offsettop 盒...
今天来简单的写一个吸顶,供大家参考,具体内容如下
先罗列一下吸顶需要使用到的属性
** scrolltop 获取当前滚动的距离(也就是盒子距离顶部的距离)
offsettop 盒子距离顶部的高度
offsetheight 盒子自身的高度
scrolly 滚动的距离
**
想要写出一个吸顶 一定要先明白这几个属性哦(当然了,他也很简单,相信您看完会有一定的收获)
根据图片中的思路来写:
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="x-ua-compatible" content="ie=edge"> <title>document</title> <style> *{ margin:0; padding:0; box-sizing:border-box; } .wrap{ overflow-y:scroll; } .header{ width: 100%; height: 40px; background: lightgreen; color:#fff; text-align: center; line-height: 40px; } .main{ height: 1000px; background: lightyellow; } .fixed{ position: fixed; top:0; } </style> </head> <body> <div class="wrap"> <div class="header">我是即将吸顶的哦</div> <div class="main"></div> </div> <script> const head = document.queryselector('.header'); document.addeventlistener('scroll',()=>{ //console.log(document.documentelement.offsettop) // 0 html距离顶部的距离 //console.log(document.queryselector('.header').offsetheight) // 40 红盒子的高度 //console.log(window.scrolly) // 滚动的距离 if(window.scrolly > head.offsetheight){ head.classlist.add('fixed') } }) </script> </body> </html>
敬请期待 效果图示(正在制作中…)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。