ionic-plugin-keyboard无法正常工作

时间:2016-04-25 19:25:48

标签: cordova phonegap-plugins cordova-plugins

我正在使用PhoneGap创建一个新应用。 我需要使用键盘事件,我不能使它们工作。我只在Android设备上进行测试。

我已经阅读了有关它的所有其他问题,并且没有一个建议的解决方案适合我。 我现在正在尝试解决这个特定问题,创建了一个非常简单的项目。

这个想法是:我有输入和一个盒子。设备准备好后,我改变了盒子的颜色(这是有效的)。当我点击输入并显示键盘时,我想改变盒子的颜色,当我关闭键盘时,我想再次改变颜色。

我的 html

        <head>
           <meta charset="utf-8" />
           <meta name="format-detection" content="telephone=no" />
           <meta name="msapplication-tap-highlight" content="no" />

           <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi" />

           <link rel="stylesheet" type="text/css" href="css/index.css" />
           <link rel="stylesheet" type="text/css" href="css/style.css" />

           <script type="text/javascript" charset="utf-8" src="cordova.js"></script>

        </head>

        <body>

                <form><input type="number" name="amount"></form>
                <div id="box"></div>


                <script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
                <script type="text/javascript" src="js/index.js"></script>
                <script type="text/javascript" src="js/main.js"></script>


                <script type="text/javascript">app.initialize();
                </script>
            </body>

这是我的 main.js deviceready 事件在我的设备上正常工作并更改框的颜色。但没有关于 hidekeyboard showkeyboard

的内容
 if (navigator.userAgent.match(/(iPhone|iPod|iPad|Android|BlackBerry)/)) {
        document.addEventListener("deviceready", onDeviceReady, false);
    } else {
        onDeviceReady();}

 function onDeviceReady(){
        $('#box').css({'background-color': 'red'}); 
        document.addEventListener("hidekeyboard", onHide, false);
        document.addEventListener("showkeyboard", onShow, false);}

 function onHide() {
        $('#box').css({'background-color': 'green'});  }

 function onShow() {
        $('#box').css({'background-color': 'black'}); }

我在 config.xml

中添加了这一行
<plugin name="com.ionic.keyboard" source="pgb" />

我还尝试在 index.html 中添加代码,但我删除了它,因为它没有用。

提前致谢!

1 个答案:

答案 0 :(得分:0)

而不是您的键盘隐藏和keyboardshow eventListeners

native.keyboardshow native.keyboardhide