我想在按下按钮后禁用滚动。我已经找到this answer并且它非常好 - 但是用户仍然可以通过在页面上标记某些内容并将其拖动到浏览器的顶部/底部来滚动。
此代码尽可能快地重置滚动位置,但滚动仍然可见(此解决方案看起来有点脏)
var pageYOffset = window.pageYOffset;
setInterval(function () { window.scrollTo(0, pageYOffset) }, 1);
答案 0 :(得分:1)
当滚动处于禁用状态时,您可以尝试disabling text selection highlighting。
试试这个fiddle
在disable_scroll()中添加
$("html").addClass("diableSelection");
并在enable_scroll()中添加
$("html").removeClass("diableSelection");
其中.diableSelection将是
.diableSelection {
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}