1

有谁知道在 Firefox OS 中,当键盘打开时,我有一个事件,如果是,是什么?

我需要在键盘打开事件上修改我的屏幕。视口越来越小,我需要控制这个事件的 UI。

4

3 回答 3

2

来自 dev-b2g@lists.mozilla.org 的回答

@YuanXulei(袁徐磊)

您好,键盘打开没有特殊事件,但是键盘在接收到当前输入字段的焦点事件后打开。因此,您可以改为收听该事件。

@活

'focus' 和 'resize' 事件之间会有一些时间差异(主要来自键盘覆盖转换)。所以“调整大小”是正确的事件。

过程是:

-> 用户应用程序关注输入字段

-> 键盘应用程序通过键盘 API 获取焦点事件

-> 键盘应用程序使用哈希更新其 url

-> 系统应用程序中的键盘管理器通过 mozbrowserlocationchange 事件得到通知

-> 键盘管理器执行键盘覆盖的打开过渡

-> 在打开过渡结束时,键盘管理器通过 'keyboardshow' 事件通知窗口管理器

-> 系统应用程序中的窗口管理器调用“当前”应用程序的 |appWindow.resize()| 方法。

-> appWindow 计算高度并调整容器大小,然后调整容器中的 iframe

-> 使用应用程序获取调整大小事件。

**链接到讨论**

https://groups.google.com/forum/#!topic/mozilla.dev.b2g/fXfzRsuhWcI

于 2013-08-09T13:28:34.440 回答
0

我认为目前没有这样的活动,即使是经过认证的应用程序也是如此。浏览器应用程序使用媒体查询黑客来检测何时keyboard打开,这确实不理想。随意提交错误以添加此功能。

于 2013-08-09T10:56:59.060 回答
0

由于只有经过认证的应用程序可以访问mozKeyboard,您可能不能。

于 2013-08-09T09:36:34.100 回答