jquery – 当绝对定位的元素(部分)偏离屏幕时,如何阻止鼠标拖动时的屏幕滚动?

前端之家收集整理的这篇文章主要介绍了jquery – 当绝对定位的元素(部分)偏离屏幕时,如何阻止鼠标拖动时的屏幕滚动?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我不希望我的网页滚动.我有一个< body>宽度100%,我将其溢出设置为隐藏,它通常有效.没有滚动条,没有鼠标滚轮/触摸板手势滚动.但如果我点击并拖动到任何地方,我仍然可以滚动.

臭味是我有一个绝对定位的div,所以它在其父级之外,部分(有时完全)在屏幕外.由于一些原因,我现在无法解决这个问题.

这个小提琴说明了我的问题(我在webkit中看到它),http://jsfiddle.net/ax5x7/2/

在HTML中向右拖动几乎任何地方都会导致页面滑动.回去是因为没有滚动条很棘手,所以如果你错误地这样做,那看起来很糟糕.

在这里找到一个与jQuery弃用的disableSelection()相关的建议,但除非我做错了(我将它应用于body以及所有的孩子),它似乎并没有阻止这种行为.我还发现了一个几年前似乎没有令人满意的解决方案的问题.绑带是有点kludgy,我宁愿不在一个间隔滚动到(0,0).

最佳答案
这将有效,并且不会禁用文本选择:

$(document).on('scroll',function() {
  $(document).scrollLeft(0);
});

你可以添加$(document).scrollTop(0);如果要禁用向下滚动.

这是一个jsFiddle

猜你在找的HTML相关文章