js+css 实现 滚动条滑动时显示,不滑动时隐藏

时间: 2018-04-10阅读: 4684标签: 滚动

思路

把原有的滚动条隐藏,创建个新的滚动条,并拓展其宽度,达到隐藏的效果,而判断滚动条是否滚动,保存原有的滚动条到顶部的距离,看是否发生改变,做出相应的判断。


html

 <body>
    <div id='wrapper'>
       ...
       ...
    </div>
 </body>


css

body{ 
/* 隐藏原有的滚动条 */ 
overflow: hidden; 
} 
#wrapper{ 
width: 1940px; /* 宽度,通常浏览页面是1920px ,根据实际状况做调整,通常滚动条为20px,大于20即可隐藏 */ 
height: 1000px; 
overflow-y: scroll; /* 创建新的滚动条*/ 
padding-right: 20px; /* 滚动条右边距 */ 
}


js

var topValue = 0
interval = null;// 定时器  
jQuery('#wrapper').scroll(function(){  
             if(interval == null){// 未发起时,启动定时器,1秒1执行  
                   interval = setInterval(function(){
                 // 判断是否滚动
                if(jQuery('#wrapper').scrollTop()== topValue){    
                       clearInterval(interval);  
                       interval = null;  
                       // 没有滚动,则隐藏,padding边距,根据开发状况修改,此处是为了,不影响之前的css,width同理,通常是1940px,达到滚动条隐藏效果
                       jQuery("#wrapper").css({width:'1940px',padding:'0px 20px 0px 0px'})                  
                      }
                   }, 1000); 
             }
            topValue = jQuery('#wrapper').scrollTop(); 
            //滚动,则显示,padding边距,根据开发状况修改,此处是为了,不影响之前的css,width同理,通常是1940px,达到滚动条隐藏效果   
         jQuery("#wrapper").css({width:'1920px',padding:'0px 0px 0px 0px'})
        });   


转载来源:https://blog.csdn.net/qq_21570029/article/details/79865478


站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

链接: http://www.fly63.com/article/detial/614

解析移动端滚动穿透

滚动穿透在移动端开发中是一个很常见的问题,产生诡异的交互行为,影响用户体验,同时也让我们的产品看起来不那么“专业”。虽然不少产品选择容忍了这样的行为,但是作为追求极致的工程师,应该去了解为什么会产生以及如何去解决

CSS:scroll-snap滚动事件停止及元素位置检测

CSS Scroll Snap是个非常好用的特性,可以让网页容器滚动停止的时候,无需任何JS代码的参与,浏览器可以自动平滑定位到指定元素的指定位置。类似幻灯片广告效果就可以纯CSS实现

使用CSS实现无滚动条滚动

我们都知道,撸页面的时候当我们的内容超出了我们的div,往往会出现滚动条,影响美观。百度下大部分都是在说overflow:hidden或者overflow-y: no可以解决问题,但是并不能很好的解决我们的问题,那么怎么办呢?

原生js获取浏览器获X轴,Y轴的滚动距离

在前端开发中,需要获取浏览器滚动距离的需求,这篇文章主要讲解如何使用原生Js兼容实现获取浏览器获X轴,Y轴的滚动距离。并延伸扩展下我们一些不知道的js知识,希望对你有所帮助。

js 禁止/允许页面滚动

passive,设置该属性的目的主要是为了在阻止事件默认行为导致的卡顿。等待监听器的执行是耗时的,有些甚至耗时很明显,这样就会导致页面卡顿。即便监听器是个空函数,也会产生一定的卡顿,毕竟空函数的执行也会耗时

移动端滚动穿透问题解决方案

移动端有可滚动的弹窗肯定会遇到的问题,滑动弹层背景跟着滚动,如果弹窗里面的内容不需要滚动的可以直接粗暴的把滚动事件禁用掉,但是如果弹窗内容过多需要滚动那就不可以这样做。以下这个解决办法在线上使用没有问题,可以大胆拿去用

CSS-界面滚动时不显示滚动条

::-webkit-scrollbar CSS伪类选择器影响了一个元素的滚动条的样式,你可以使用以下伪元素选择器去修改各式webkit浏览器的滚动条样式:::-webkit-scrollbar — 整个滚动条.::-webkit-scrollbar-button — 滚动条上的按钮 (上下箭头).

原生js实现新闻无间歇性上下滚动【无间歇文字滚动】

这篇文章主要介绍使用js实现文字无间歇性上下滚动,一些网站的公告,新闻列表使用的比较多,感兴趣的小伙伴们可以参考一下 ,代码实现如下。

原生JS实现滚动条

可视内容区的高度 / 内容区的实际高度 = 滚动条的高度 / 滑道的高度;内容区距离顶部的距离 / (内容区的实际高度 - 可视内容区域的高度 ) = 滚动条距离顶部的距离 / ( 滑道的高度 - 滚动条的高度)

三种方式实现平滑滚动页面到顶部的功能

最近开发公司的公众号H5,做了一个点击icon滚动到顶部的功能。实现功能比较简单,直接调用window.scrollTo(0, 0),一行代码完成。但是作为一个攻城狮,怎么可能对自己要求这么低,所以我给自己加了个需求

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!