Javascript iOS web应用程序:在输入文本字段上禁用自动聚焦

Javascript iOS web应用程序:在输入文本字段上禁用自动聚焦,javascript,html,css,ios,ipad,Javascript,Html,Css,Ios,Ipad,我有一个简单的iOS网络应用程序问题 创建输入文本字段时,用户单击文本字段,mobile safari将自动聚焦输入字段,自动将用户单击的输入字段移动到屏幕中央。可视键盘将画布推到顶部或左侧,或任何可以使输入字段居中的空间 嗯,我想做的是禁用输入字段上的自动对焦,以便用户单击输入字段,画布完全不移动或动画,画布保持在屏幕上,就像固定的一样,并且可视键盘可能与输入字段重叠。(尝试通过Javascript或CSS实现)我以前遇到过这样的问题,一个固定大小的webapp(为iPad构建)被浏览器部分滚

我有一个简单的iOS网络应用程序问题

创建输入文本字段时,用户单击文本字段,mobile safari将自动聚焦输入字段,自动将用户单击的输入字段移动到屏幕中央。可视键盘将画布推到顶部或左侧,或任何可以使输入字段居中的空间


嗯,我想做的是禁用输入字段上的自动对焦,以便用户单击输入字段,画布完全不移动或动画,画布保持在屏幕上,就像固定的一样,并且可视键盘可能与输入字段重叠。(尝试通过Javascript或CSS实现)

我以前遇到过这样的问题,一个固定大小的webapp(为iPad构建)被浏览器部分滚动出视图,因为它试图将文本字段置于视图的中心

在表单的一个父元素上设置“
位置:固定”
”可防止出现这种情况<代码>位置:绝对允许移动。根据您的布局,将表单设置为“
位置:固定”
”可能会有所帮助

position: fixed;

编辑:在固定大小的iOS webapp上处理表单的另一个相关事项是:当文本字段处于活动状态时,如果用户拖动手指,可能会在屏幕上移动整个固定元素(基本上是滚动您不希望滚动的UI)。如果发现发生这种情况,可以向表单中添加touchmove事件处理程序并阻止默认操作

//jQuery:
$('#myForm').bind('touchmove', function(ev) { ev.preventDefault(); });
// Or not:
document.getElementById('myForm').addEventListener(
    "touchmove",
    function(ev) {
        ev.preventDefault();
    },
    false
);

最简单的方法是在页面顶部的任何div上设置“tabindex=0”。

他们为此付出了很多努力。我不认为你可以通过javascript来阻止这种情况。抱歉,这可能是不可能的。谢谢,这帮助了我解决了一个奇怪的问题,当iOS弹出键盘在关闭和重新打开键盘时稍微改变了web视图。