我有下一个测试代码:
HTML:
<html>
<head>
<script src="js/app.js"></script>
<script src="cordova.js"></script>
</head>
<body>
<p><button>Show keyboard</button></p>
<p><input></input></p>
<p><span>?</span></p>
</body>
</html>
和js:
document.addEventListener("deviceready", handler, false);
function handler() {
window.addEventListener('native.keyboardshow', function() {
document.getElementsByTagName("span")[0].innerHTML = "showed";
});
document.getElementsByTagName("button")[0].addEventListener("click", function() {
document.getElementsByTagName("input")[0].focus();
cordova.plugins.Keyboard.show();
});
}
show()
功能有效,我了解该插件可从我的应用中获得。但是当显示键盘时没有发生任何事情:我的span
标记没有获得"showed"
文字。
什么问题?
答案 0 :(得分:1)
如果您要定位Android,请按照以下答案中的说明将<preference name="android-windowSoftInputMode" value="adjustResize" />
添加到config.xml:https://stackoverflow.com/a/31683935/5356747
使用此首选项设置键盘事件开始在我的应用程序中启动。
答案 1 :(得分:0)
你可能已经添加了 cordova-plugin-keyboard (它的事件不会在Android上激活。另外,事件的名称也不同)。
您需要添加 ionic-plugin-keyboard :
cordova plugin add ionic-plugin-keyboard --save