检测keydown事件(移动)

时间:2017-08-24 16:57:46

标签: javascript jquery html cordova

我目前正在使用cordova开发移动应用。我遇到过这个问题,我编写了一个函数来检测用户输入文本输入字段并按下回车键的时间。

这是JavaScript代码段;

<script type="text/javascript">
    $(function () {
        $("#searchForm").on("input", function (e) {
            e.preventDefault();
        });
        $("input").on("keydown", function (e) {
            if (e.keyCode === 13) { 
                var keyField = document.createElement('input');
                keyField.setAttribute('type', 'text');
                document.body.appendChild(keyField);
                setTimeout(function () {
                    keyField.focus();
                    setTimeout(function () {
                        keyField.setAttribute('style', 'display:none;');
                    }, 50);
                }, 50);
            }
        });
    });
</script>

HTML部分;

<form onsubmit="return false" id="searchForm">
    <input type="text" id="fieldOne">
    <input type="text" id="fieldTwo">
    <input type="button" value="Search" id="search" onclick="executeSearches()"/>
</form>      

此代码用于实现隐藏移动键盘,但是当隐藏功能执行时,由于keyField变量而移动了视图。

有没有其他方法可以在没有移动视图的情况下实现此功能,或者我可以以某种方式确定视图移动到哪里?

1 个答案:

答案 0 :(得分:1)

你缺少&#34;#&#34;,检查jquery选择器

$("#searchForm").on("input", function (e) {
        e.preventDefault();
    });