我正在用HTML和JavaScript编写一个可在iPhone上使用的Web应用程序。 我想要实现的是防止应用程序弹性滚动(滚动经过页面范围并弹回)。 但是,我需要我的应用程序中的一些较长的元素才能滚动(该应用程序具有较长的画布)。
我已经尝试过在Internet上其他地方找到的许多解决方案,但是,所有这些解决方案要么都使用了JQuery,要么完全禁用了滚动功能,要么使用了Phonegap,要么仅在IOS 7上无法正常使用。我该怎么办?
看到这个答案stackoverflow.com/a/16898264/112731
如何在iOS Web应用程序中禁用橡皮筋的可能重复项?
在该问题上给出的解决方案不再起作用。 您会遇到上下抖动的情况。
没有jQuery,有一种方法可以实现:
document.body.addEventListener('touchmove', function(event) {
event.preventDefault();
});
但这不是一个适当的解决方案。最好将内容包装在一些div中,并在其上使用css属性:
-webkit-overflow-scrolling: touch;
这是例子
编辑:
这只会防止在webview中过度滚动,而不会阻止应用程序中的滚动。因此,您需要在应用配置中禁用此功能。
如果您使用phonegap:
[cc lang="javascript"]
在这里更多描述
如果您不使用phonegap,则可以使用它。
这完全停止了滚动。 我希望能够滚