【问题标题】:ios7 issues with webview focus when using keyboard htmlios7 使用键盘 html 时出现 webview 焦点问题
【发布时间】:2013-10-07 06:09:02
【问题描述】:

Sencha - 我有一个 Web 应用程序,其注册表单可在 Safari 上正常运行。但是,由于某种原因,在将页面添加到主屏幕(使用 ios webview)时会出现此问题:

当我单击文本字段时,键盘不会缩放到所选的特定字段。为了开始写入该文本字段,我需要再次按下该文本字段。

我正在使用煎茶。

【问题讨论】:

    标签: javascript html extjs webview ios7


    【解决方案1】:

    我找到了适用于 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 的内容与设备大小相同,包括顶部状态栏的高度。这使得内容实际上高于可用空间(状态栏下方)。它可以与元标记结合使用:&lt;meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"&gt; 使内容位于状态栏下方,但它并没有给出我期望的外观。
    • height=device-height 似乎是修复它的选项。如果我删除它,它就会停止工作。
    • 修复了这个问题,但是body元素会出现不必要的溢出滚动。任何解决方法
    • 很好的修复。谢谢。顺便说一句:我有一个仅限横向的应用程序,height=device-height 将高度设置为纵向高度。当我使用height=device-width 时,它运行良好。可能对某些人有帮助。
    • 请注意,元标记上的 target-densityDpi=device-dpi 属性在 WebKit 中已被弃用。见:stackoverflow.com/questions/11592015/…
    【解决方案2】:

    我遇到了同样的问题。在我的情况下,我使用的是 jquery mobile,为了解决这个问题,我在输入字段中添加了属性“autofocus”。
    这似乎模拟了在该字段上的第一次点击,而用户的点击打开键盘,他将能够写入该字段。
    希望这会有所帮助。

    【讨论】:

    • 绝对精彩。由于固定的页眉/页脚,height=device-height 是不可能的,这很好用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-18
    • 1970-01-01
    相关资源
    最近更新 更多