iPhone浏览器:拖动html输入字段时禁用页面滚动

时间:2011-06-30 08:00:56

标签: javascript html html5 iphone

我制作了一个HTML页面。此页面小于Iphone屏幕。让我们说这是登录页面。该页面包含文本输入字段。

我禁用了以这种方式滚动页面:

document.ontouchmove = function(e){
    e.preventDefault();
}

该代码阻止了滚动,但是当我点击输入字段并拖动时,该页面仍在滚动。

有没有办法在iPhone上完全禁用HTML中的页面滚动?

2 个答案:

答案 0 :(得分:0)

用户始终可以通过触摸状态栏滚动到顶部,因此防止滚动的最佳方法是继续滚动。将window.scrollTo(x, y)放在setInterval中,每当用户滚动页面时,您都可以将其滚动回正确的位置。

当用户单击输入字段时,Mobile Safari可能会向上滚动一点以避免键盘覆盖输入字段。确保滚动行为不会使键盘覆盖输入字段。

答案 1 :(得分:0)

它对我有用

$("body").bind("touchmove", function(e) {
   e.preventDefault();
});