js实现移动端吸顶效果


Posted in Javascript onJanuary 08, 2020

今天来简单的写一个吸顶,供大家参考,具体内容如下

先罗列一下吸顶需要使用到的属性
** scrollTop 获取当前滚动的距离(也就是盒子距离顶部的距离)
offsetTop 盒子距离顶部的高度
offsetHeight 盒子自身的高度
scrollY 滚动的距离
**

想要写出一个吸顶 一定要先明白这几个属性哦(当然了,他也很简单,相信您看完会有一定的收获)

js实现移动端吸顶效果

根据图片中的思路来写:

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

敬请期待 效果图示(正在制作中…)

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

Javascript 相关文章推荐
JS 判断代码全收集
Apr 28 Javascript
JQuery中each()的使用方法说明
Aug 19 Javascript
通过Jquery遍历Json的两种数据结构的实现代码
Jan 19 Javascript
JavaScript制作的可折叠弹出式菜单示例
Apr 04 Javascript
jquery序列化表单以及回调函数的使用示例
Jul 02 Javascript
js变量、作用域及内存详解
Sep 23 Javascript
jquery实现页面百叶窗走马灯式翻滚显示效果的方法
Mar 12 Javascript
完美的js div拖拽实例代码
Sep 24 Javascript
javascript中闭包概念与用法深入理解
Dec 15 Javascript
JavaScript实现星级评分
Jan 12 Javascript
微信小程序分享功能之按钮button 边框隐藏和点击隐藏
Jun 14 Javascript
详解微信小程序实现仿微信聊天界面(各种细节处理)
Feb 17 Javascript
vue.js自定义组件实现v-model双向数据绑定的示例代码
Jan 08 #Javascript
微信小程序实现吸顶效果
Jan 08 #Javascript
JS实现吸顶特效
Jan 08 #Javascript
vue项目中在可编辑div光标位置插入内容的实现代码
Jan 07 #Javascript
electron+vue实现div contenteditable截图功能
Jan 07 #Javascript
解决vue elementUI中table里数字、字母、中文混合排序问题
Jan 07 #Javascript
Vue程序化的事件监听器(实例方案详解)
Jan 07 #Javascript
You might like
PHPAnalysis中文分词类详解
2014/06/13 PHP
php和editplus正则表达式去除空白行
2015/04/17 PHP
php将图片文件转换成二进制输出的方法
2015/06/10 PHP
Laravel框架基于ajax实现二级联动功能示例
2019/01/17 PHP
ASP.NET中使用后端代码注册脚本 生成JQUERY-EASYUI的界面错位的解决方法
2010/06/12 Javascript
实例解析jQuery插件EasyUI最常用的表单验证规则
2015/11/29 Javascript
nodejs实现bigpipe异步加载页面方案
2016/01/26 NodeJs
新入门node.js必须要知道的概念(必看篇)
2016/08/10 Javascript
Angular2使用Augury来调试Angular2程序
2017/05/21 Javascript
基于EasyUI的基础之上实现树形功能菜单
2017/06/28 Javascript
ES6中Array.includes()函数的用法
2017/09/20 Javascript
AngularJs 最新验证手机号码的实例,成功测试通过
2017/11/26 Javascript
Vue.js更改调试地址端口号的实例
2018/09/19 Javascript
vue2使用keep-alive缓存多层列表页的方法
2018/09/21 Javascript
JS+php后台实现文件上传功能详解
2019/03/02 Javascript
微信小程序 确认框的实现(附代码)
2019/07/23 Javascript
[02:32]DOTA2英雄基础教程 美杜莎
2014/01/07 DOTA
python进阶教程之动态类型详解
2014/08/30 Python
Perl中著名的Schwartzian转换问题解决实现
2015/06/02 Python
python实现Decorator模式实例代码
2018/02/09 Python
用python处理图片实现图像中的像素访问
2018/05/04 Python
Python 解码Base64 得到码流格式文本实例
2020/01/09 Python
加州风格的游泳和沙滩装品牌:Cupshe
2019/06/10 全球购物
英国最大的笔记本电脑直销专家:Laptops Direct
2019/07/20 全球购物
CK加拿大官网:Calvin Klein加拿大
2020/03/14 全球购物
Vans(范斯)新西兰官方网站:美国原创极限运动品牌
2020/09/19 全球购物
Linux管理员面试题 Linux admin interview questions
2016/07/08 面试题
公司人力资源的自我评价
2014/01/02 职场文书
事假请假条范文
2014/04/11 职场文书
电子专业毕业生自荐信
2014/05/25 职场文书
校园主题婚礼活动策划方案
2014/09/15 职场文书
2014年高一班主任工作总结
2014/12/05 职场文书
个人年终总结开头
2015/03/06 职场文书
辩论会主持词
2015/07/03 职场文书
素质教育培训心得体会
2016/01/19 职场文书
vue.js Router中嵌套路由的实用示例
2021/06/27 Vue.js