移动Safari或屏幕上的屏幕键盘打开时是否触发了JavaScript事件?

我尝试对我们的Web应用程序中的屏幕键盘做出反应。 不幸的是有一些事情复杂化了:

首先,应用程序必须在移动平台(平板电脑)和桌面平台上运行。 另外禁止滚动文档/文本,为了增加更多的内容,横向模式在平板电脑上是强制性的。

所以,如果有人select了任何input字段,屏幕上的键盘就会打开,并阻挡了一半的视线,因此一些input变得不可见,我需要改变它。

不幸的是,似乎根本没有发生任何事件,这表明,一半的申请刚刚变得不可见。 我已经检查过滚动和调整事件大小,但是它们也没有启动。

当然,只要我确定要在平板电脑上,我总是可以做出反应。 可能有95%的用户不会附加硬件键盘。 但是没有更清洁的方法吗?

不幸的是,这里的答案是明确的: 。 有一些相关的问题在这里有一些进一步的信息和技巧:

虚拟键盘处于活动状态时的屏幕样式

iPad的Web应用程序:检测虚拟键盘在Safari中使用JavaScript?

Android / iPhone的WebKit,键盘popup触发事件?

你尝试了焦点事件吗?

因此,当键盘出现时,您可以使用类locking窗体(或其他父元素)的最小高度,因此用户可以在selectinput时滚动触摸屏。

我正在寻找一个类似的问题,这个窍门解决了我的情况。 =)

Interesting Posts