Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/224.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript “在哪里?”;“显示键盘”;事件来自哪里?_Javascript_Android_Events_Cordova - Fatal编程技术网

Javascript “在哪里?”;“显示键盘”;事件来自哪里?

Javascript “在哪里?”;“显示键盘”;事件来自哪里?,javascript,android,events,cordova,Javascript,Android,Events,Cordova,我正在使用PhoneGap,我需要在android手机上捕捉“键盘正在显示”事件 我发现一些帖子说要使用“showkeyboard”事件。(这个例子:) 我的问题:这是一个android事件,可用于phonegap吗?这是一个简单的电话间隔事件吗?这是浏览器事件吗?这是一个经典的javascript事件吗 我找不到这个活动的任何文档,我需要它,因为它也会在方向改变时启动 编辑:我发现了这个,说它来自android,但没有记录:这些事件来自android,但没有记录。我遇到了一些问题,所以我建议不

我正在使用PhoneGap,我需要在android手机上捕捉“键盘正在显示”事件

我发现一些帖子说要使用“showkeyboard”事件。(这个例子:)

我的问题:这是一个android事件,可用于phonegap吗?这是一个简单的电话间隔事件吗?这是浏览器事件吗?这是一个经典的javascript事件吗

我找不到这个活动的任何文档,我需要它,因为它也会在方向改变时启动


编辑:我发现了这个,说它来自android,但没有记录:

这些事件来自android,但没有记录。我遇到了一些问题,所以我建议不要使用它们

作为参考,为了使我的函数工作,我做了如下工作(这只是一般的想法):

我在“隐藏板”事件中也做了同样的事情。希望这会有所帮助


[编辑]还有一个问题(yirk!):键盘可能略有不同。如果键盘变小:“hidekeyboard”事件被触发……

我是否遗漏了什么?
this._keyboardTimer;

document.addEventListener('showkeyboard', function (e) {
    clearTimeout(this._keyboardTimer); // keep only the last event
    this._keyboardTimer = setTimeout(function(oldOrientation){
        if (oldOrientation != getOrientation()) { 
            /* this is an orientation event */
        } else { 
            /* keyboard is really opening */
        }
    }.bind(this, getOrientation()), 200);
}.bind(this), false);

function getOrientation() {
    return ( (window.orientation == 90) || (window.orientation == -90) ) 
            ? 'landscape' 
            : 'portrait';
};