2

我在 PhoneGap IOS 应用程序中使用 JQuery Mobile。我目前在搜索键中成功捕获了 IOS 键盘返回,如下所示。

JS
function blah()
{
if(window.event.keyCode == 13   )
{ do something }
}

HTML
<input type="search" id="searchBox" value="" onblur="dothis()" data-inline="true"    onKeyPress="blah();" />

我也想捕捉键盘上的“完成”键。我似乎无法找到有关此的任何信息。

谢谢。

4

2 回答 2

2

不幸的是,按下“完成”键不会触发 keyCode 事件。所以,我似乎也找不到检测它的方法。

我认为唯一的选择是检测您所在领域的“模糊”事件。如果事件发生,则触发您需要的任何操作。当然,这仅在您有一个字段时才有用。如果你有多个字段,使用“blur”相当于“Go”或“Submit”是没有用的。

让我们知道您是否找到了更好的解决方法。

于 2013-07-15T12:49:58.943 回答
2

我建议在原始答案中使用模糊事件。但是,我认为一个更好的主意是简单地听键盘隐藏 - 这将在按下“完成”按钮后发生。

window.addEventListener('keyboardDidHide', function () {
  // Describe your logic which will be run each time keyboard is closed.
});

https://github.com/cjpearson/cordova-plugin-keyboard#keyboarddidhide

此外,请确保在您完成键盘隐藏后需要执行的任何操作后取消注册此侦听器。否则,每次键盘隐藏在应用程序的其他部分时,它都会触发。

于 2015-12-22T22:18:32.113 回答