禁止浏览器滚动条滚动,但滚动条可以显示

Posted 天天饱

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了禁止浏览器滚动条滚动,但滚动条可以显示相关的知识,希望对你有一定的参考价值。

最近写一个类似土豆播放器选集数的滚动条,需要的效果是当鼠标位于选择集数的div中时只能滚动该div的滚动条,但是浏览器滚动条禁止滚动~

 

网站找了很多方法都是直接隐藏滚动条,最终找到下面方法

代码:

var keys = [37, 38, 39, 40];

function preventDefault(e) {
  e = e || window.event;
  if (e.preventDefault)
      e.preventDefault();
  e.returnValue = false;  
}

function keydown(e) {
    for (var i = keys.length; i--;) {
        if (e.keyCode === keys[i]) {
            preventDefault(e);
            return;
        }
    }
}

function wheel(e) {
  preventDefault(e);
}

function disable_scroll() {
  if (window.addEventListener) {
      window.addEventListener(\'DOMMouseScroll\', wheel, false);
  }
  window.onmousewheel = document.onmousewheel = wheel;
  document.onkeydown = keydown;
}

function enable_scroll() {
    if (window.removeEventListener) {
        window.removeEventListener(\'DOMMouseScroll\', wheel, false);
    }
    window.onmousewheel = document.onmousewheel = document.onkeydown = null;  
}

  

 代码测试:

禁止浏览器滚动条滚动 允许浏览器滚动条滚动

以上是关于禁止浏览器滚动条滚动,但滚动条可以显示的主要内容,如果未能解决你的问题,请参考以下文章

H5移动端禁止页面上下滚动

如何在 MS Word 文档中显示代码片段,因为它在 *** 中显示(滚动条和灰色背景)

css如何在页面内出现滚动条的地方禁止鼠标滑轮滚动

css代码怎样改变火狐浏览器中滚动条样式

css代码怎样改变火狐浏览器中滚动条样式

html的一个DIV样式,如何使内容滚动条隐藏,但依旧可以滚动?