js滚动到指定位置再进行固定定位(position:fixed)
· javascript
在写js交互效果时,遇到一个问题场景,想让某部分div一开始是固定的,当滚动一定距离的时候,这部分div就开始固定定位(position:fixed),查了网上的资料后,自己已经写出了这个交互效果,但是还有一个小bug,bug如下
当滚动到最底部的时候,红色标注部分会超出底部界限范围,我程序的思路是判断滚动条距顶部的距离scrollTop的范围值,当滚动距离超过一定范围距离的时候,给后侧部分加上position:fixed让它滚动,但是这样不能解决到底部的时候离底部距离的bug,不知道这部分bug应该怎么解决,使它移到底部的时候,不会超出底部范围.
我滚动相关部分的代码如下:
window.onscroll=function(){
var topScroll =document.body.scrollTop;//滚动的距离,距离顶部的距离
var bignav = document.getElementById("bignav");//获取到导航栏id
if(topScroll <= 250){
//当滚动距离小于250的时候执行下面的内容,也就是让导航栏恢复原状
bignav.style.position = 'static';
}else{
//当滚动距离大于250px时执行下面的东西
bignav.style.position = 'fixed';
bignav.style.top = '6%';
bignav.style.right = '6%';
console.log(topScroll)
}
}
js滚动到指定位置再进行固定定位(position:fixed)
最新推荐文章于 2024-06-23 18:20:41 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)