前端插件之侧边定位随屏幕滚动而滚动

xiaoxiao2021-02-28  156

1.侧边定位一般我们可以用position:fixed;但是有时候不行,比如我需要滚动的div是在整体的里边定位,如果用fixed是相对于整个屏幕,如下:

需要滚动的是viewleftshare,而ct只是众多div中的一个。

<div id="ct" style="height: 3000px;width: 100%;position: relative;"> <div id="viewleftshare" style="width: 200px;height: 360px;background: gold;position: absolute;left: 0;top: 100px;"></div> <div style="width: 500px;float: left;margin-left: 220px;"> <p>111111111111111</p> </div> </div> 2.我们可以这样用js动态让需要滚动的div

<script type="text/javascript"> window.οnscrοll=function(){ var ct=document.getElementById("ct"); var oDiv=document.getElementById("viewleftshare"); var height=ct.offsetHeight; var top = document.body.scrollTop; console.log(height - top) if(height - top <= 450){ oDiv.style.top = height - 450 +'px'; }else{ oDiv.style.top = top + 100 +'px'; } } </script> 3.如果想来点动画,可以这样:

#viewleftshare{transition: all ease 0.5s;}

转载请注明原文地址: https://www.6miu.com/read-31748.html

最新回复(0)