繁体   English   中英

在 phonegap 应用程序中打开软键盘时是否会触发 Javascript 事件?

[英]Is there a Javascript event that is fired when soft keyboard is opened in a phonegap application?

使用 PGB 我的 Javascript 应用程序可以知道键盘何时打开吗?

我有一个页面,在页面垂直中间下方有一个文本框。 当用户将焦点设置到该文本框时,键盘会打开并覆盖文本框最顶部 2 或 3 个像素以外的所有像素。

如果我能知道键盘何时打开以及哪个元素具有焦点,我可能可以手动滚动它们一些......

我不确定 phonegap,但我在 Android 的 webapp 中遇到了类似的问题。

当虚拟键盘打开时(在 Android 设备上), window.onresize事件被调用。 您可以在应用程序启动时存储视口的原始高度,以便您稍后知道虚拟键盘是打开还是关闭(基于视口的当前高度)。

无论如何,当您在输入元素上遇到问题时,您也可以使用onfocusonblur事件。

在 PhoneGap 中获得 onDeviceReady 后,请尝试:

document.addEventListener("hidekeyboard", keyboardHide, false);
document.addEventListener("showkeyboard", keyboardShow, false);

您可能还需要:

<plugin name="SoftKeyBoard" value="org.apache.cordova.plugins.SoftKeyBoard" />

在您的 res/xml/plugins.xml Android 项目文件中。

您还需要确保在您的 Android 清单中具有:

android:windowSoftInputMode="adjustResize"

在节点中。

基本上正如w4rumy提到的,这基本上会触发 window.onresize 事件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM