一、判断滚动像素值
1.1 window.scrollY(别名:pageYOffset)
返回文档在垂直方向已滚动的像素值。为了跨浏览器兼容,请使用 window.pageYOffset
代替 window.scrollY
。
1.2 Element.scrollTop
获取或设置一个元素的内容垂直滚动的像素数。
二、监听滚动事件
在 document
视图或者一个 element
在滚动的时候,会触发元素的 scroll
事件。
三、示例
// 监听window.addEventListener('scroll', handleScroll)// 事件处理function handleScroll () { let scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop if (scrollTop > 92) { // 改变需要吸顶的元素样式为 position: fixed;... } }
如有必要(例如 Vue 组件销毁时)需要删除监听事件 window.removeEventListener('scroll', handleScroll)
。
四、sticky
粘性定位元素(stickily positioned element)在屏幕范围(viewport)时该元素的位置并不受到定位影响(设置是 top
、left
等属性无效),当该元素的位置将要移出偏移范围时,定位又会变成fixed,根据设置的 left
、top
等属性成固定位置的效果。
position: sticky; top: 50px;
目前这个属性兼容性不是很好,暂不建议在生产环境中使用(2018年09月12日16:54:54)。
作者:后除
链接:https://www.jianshu.com/p/9a9540c0210e
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦