Disable browsers vertical and horizontal scrollbars

Is it possible to disable the browsers vertical and horizontal scrollbars using jQuery or javascript?

281813 次浏览

试试 CSS

<body style="overflow: hidden">

In case you need possibility to hide and show scrollbars dynamically you could use

$("body").css("overflow", "hidden");

还有

$("body").css("overflow", "auto");

在你的代码中的某个地方。

到目前为止,我们有溢出: 隐藏在身体上。然而 IE 并不总是尊重这一点,您还需要在 body 元素上放置 roll = “ no”,并且/或者将 overflow: 也隐藏在 html 元素上。

当您需要“控制”视图端口时,您可以进一步这样做:-

<style>
body {width:100%; height:100%; overflow:hidden; margin:0; }
html {width:100%; height:100%; overflow:hidden; }
</style>

一个被赋予高度100% 的元素具有窗口视图的整个高度,并且元素的定位绝对使用底部: nnPX 将被设置为窗口底部边缘以上的 nn 像素,等等。

如果你还需要 Internet Explorer 6的支持,只要溢出 Html就可以了

$("html").css("overflow", "hidden");

还有

$("html").css("overflow", "auto");

试试 CSS。

如果要水平移除

overflow-x: hidden;

如果你想删除垂直

overflow-y: hidden;
function reloadScrollBars() {
document.documentElement.style.overflow = 'auto';  // firefox, chrome
document.body.scroll = "yes"; // ie only
}


function unloadScrollBars() {
document.documentElement.style.overflow = 'hidden';  // firefox, chrome
document.body.scroll = "no"; // ie only
}

IE 浏览器的滚动条有一些 bug。因此,如果您想要两者中的任何一个,您必须包含以下内容来隐藏水平滚动条:

overflow-x: hidden;
overflow-y:scroll;

以及垂直隐藏:

overflow-y: hidden;
overflow-x: scroll;

因为 Firefox 有一个箭头键快捷方式,所以您可能希望在其周围放置一个带 CSS 样式的 <div>: overflow:hidden;

在 IE 的现代版本(IE10及以上)中,滚动条可以使用 -ms-overflow-style财产来隐藏。

html {
-ms-overflow-style: none;
}

在 Chrome 中,可以设置滚动条的样式:

::-webkit-scrollbar {
display: none;
}

如果您想在 Web 应用程序中使用“默认”的主体滚动,这非常有用,比 overflow-y: scroll快得多。

(我现在还不能发表评论,但是我想分享一下) :

Lyncee 的代码在桌面浏览器上对我很有用。然而,在 iPad (Chrome,iOS9)上,它使应用程序崩溃。为了弥补,我改变了

document.documentElement.style.overflow = ...

document.body.style.overflow = ...

which solved my problem.

Using JQuery you can disable scrolling bar with this code :

$('body').on({
'mousewheel': function(e) {
if (e.target.id == 'el') return;
e.preventDefault();
e.stopPropagation();
}
});

Also you can enable it again with this code :

 $('body').unbind('mousewheel');