2015-01-15 128 views
5

我正在为android手机进行聊天应用程序,但我面临一个问题。如何防止科尔多瓦在输入失去焦点时隐藏键盘

我有一个文本区域字段(用户可以写他们的消息)和一个按钮来发送消息。

当用户点击文本区域时,键盘出现。但是,当用户单击按钮发送消息时,文本区域将失去焦点并且键盘消失。我想继续显示键盘并将焦点返回到文本区域。

我试着

$('#text-area).focus() 

选择键盘但它没有发挥出来。

我也将这行添加到我的config.xml中。

<preference name="KeyboardDisplayRequiresUserAction" value="false"/> 

我试过使用插件https://github.com/driftyco/ionic-plugins-keyboard。当键盘将隐藏,它触发一个事件,但我能做的唯一的事情就是与

cordova.plugins.Keyboard.show(); 

的问题是,该键盘隐藏/显示和动画仍然触发再次打开它。

任何建议?

+0

你解决了这个问题吗? – 2017-06-06 12:50:39

+0

试用此解决方案:https://stackoverflow.com/a/45766254/6381989它为我工作! – 2017-08-18 23:34:30

回答

0

我这样做是这样的:

<textarea id="NewTextBox" ng-model="newMsgModel.text" ng-click="add()"></textarea> 

和angularJS:

$scope.add = function() { 
    /** add message to db ...*/ 

    /** keep Keyboard Open*/ 
    $('#NewTextBox').focus(); 
}; 
+0

不应该把一个'ng-click'处理程序放在按钮上而不是'textarea'上吗? (重读OP的问题) – rinogo 2016-10-27 23:07:05