【发布时间】:2013-10-07 06:09:02
【问题描述】:
Sencha - 我有一个 Web 应用程序,其注册表单可在 Safari 上正常运行。但是,由于某种原因,在将页面添加到主屏幕(使用 ios webview)时会出现此问题:
当我单击文本字段时,键盘不会缩放到所选的特定字段。为了开始写入该文本字段,我需要再次按下该文本字段。
我正在使用煎茶。
【问题讨论】:
标签: javascript html extjs webview ios7
Sencha - 我有一个 Web 应用程序,其注册表单可在 Safari 上正常运行。但是,由于某种原因,在将页面添加到主屏幕(使用 ios webview)时会出现此问题:
当我单击文本字段时,键盘不会缩放到所选的特定字段。为了开始写入该文本字段,我需要再次按下该文本字段。
我正在使用煎茶。
【问题讨论】:
标签: javascript html extjs webview ios7
我找到了适用于 iOS 7 的解决方案。在您的 HTML 页面中使用以下元标记:
<meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0, target-densityDpi=device-dpi" />
【讨论】:
height=device-height 的内容与设备大小相同,包括顶部状态栏的高度。这使得内容实际上高于可用空间(状态栏下方)。它可以与元标记结合使用:<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"> 使内容位于状态栏下方,但它并没有给出我期望的外观。
height=device-height 似乎是修复它的选项。如果我删除它,它就会停止工作。
height=device-height 将高度设置为纵向高度。当我使用height=device-width 时,它运行良好。可能对某些人有帮助。
target-densityDpi=device-dpi 属性在 WebKit 中已被弃用。见:stackoverflow.com/questions/11592015/…
我遇到了同样的问题。在我的情况下,我使用的是 jquery mobile,为了解决这个问题,我在输入字段中添加了属性“autofocus”。
这似乎模拟了在该字段上的第一次点击,而用户的点击打开键盘,他将能够写入该字段。
希望这会有所帮助。
【讨论】:
height=device-height 是不可能的,这很好用。