KeyboardShrinksView 使失去焦点
Posted
技术标签:
【中文标题】KeyboardShrinksView 使失去焦点【英文标题】:KeyboardShrinksView makes lose focus 【发布时间】:2013-04-22 14:00:56 【问题描述】:Phonegap 2.6 (ios) 中包含的 KeyboardShrinksView 功能有问题。
当我在想要包含文本的文本区域中点击时,键盘会出现,并且 web 视图会按我的意愿收缩。
问题是我失去了对文本区域的关注,用户必须再次点击文本区域才能开始在其中书写。
有人对这个新功能有同样的问题吗?
谢谢!!
【问题讨论】:
【参考方案1】:在您的输入上添加一个点击(或 touchstart)事件,该事件将专注于您的字段。
element.on("tap", function(e)element.focus());
问题来自使用幽灵点击事件在 ios 上完成焦点的事实。但是当它被触发时,视图已经改变了(因为键盘)。
这个问题在 ios7 上会更常见,因为 KeyboardShrinksView 是默认行为...
【讨论】:
不知道为什么,但对我来说,touchend 事件似乎可以解决问题【参考方案2】:在 web view 收缩之后尝试编写这段代码。
[TextFieldOnWhichFocusIsExpected BecomeFirstResponder];
【讨论】:
【参考方案3】:从 Phonegap 2.9 升级到 3.1 后,我遇到了 iOS 的这个问题。通过将 height=device-height 添加到我的元标记来解决,所以它现在看起来像这样:
<meta name="viewport" content="width=device-width, height=device-height, initial-scale=1, user-scalable=no">
【讨论】:
以上是关于KeyboardShrinksView 使失去焦点的主要内容,如果未能解决你的问题,请参考以下文章