防止页面滚动

时间:2011-12-06 17:03:31

标签: javascript jquery mobile jquery-mobile

我正在使用jQuery mobile开发移动应用程序,我遇到以下问题:

我有一个菜单里面有一个带有垂直滚动的div。一旦滚动到达容器的底部,它就开始滚动页面本身,这不是我想要的。有没有办法防止这种行为?我的意思是,允许滚动菜单的滚动直到底部,当它发生时,当我在菜单上滚动时拒绝页面滚动?

更新

这是一个具有相同问题的原始示例 - http://jsfiddle.net/Wg8pk/

如果向下滚动“菜单选项”,菜单到达结尾时将向下滚动页面。

2 个答案:

答案 0 :(得分:1)

如何在滚动的元素上调用event.preventDefault()

$('#my-scroll-div').bind('touchmove', function (event) {
    event.preventDefault();
});

我不确定哪个事件会更好地绑定,但touchmove似乎会起作用。如果您设置了代码的jsfiddle,我们可以提供更好的建议。

答案 1 :(得分:0)

您需要使菜单具有固定的高度,然后使用css来防止溢出。 应该有效的用户overflow:hidden;