Phonegap + Android 4.4:如何检测SoftKeyBoard何时隐藏?
我试图添加一个事件监听器来检测软键盘何时隐藏,但它不起作用!
我试过这段代码:
document.addEventListener('deviceready', function() { document.addEventListener("hidekeyboard", function() { alert('hidekeyboard!'); }, false); }, false);
当输入失去焦点时我试图检测到它,但是当软键盘隐藏时,输入元素仍然是焦点。
提前致谢!
试试这个::
var lastFocused; $(document).on("focusout","input[type='date'],input[type='time'],input[type='week'],input[type='text'],textarea,select",function(){ lastFocused = undefined; // console.log("yes me call focusout"); }); $(document).on("focus","input[type='date'],input[type='time'],input[type='week'],input[type='text'],textarea,select",function(){ if(utils.isUndefined(lastFocused) == false && lastFocused.is($(this)) == false){ lastFocused.blur(); /////////////////////////////////////////////////////////////////////////////// // console.log("Here you can get your keyboard is hide"); } lastFocused = $(this); // console.log("yes me call focus"); });
我找到了解决问题的方法。 问题是’hidekeyboard’事件从未由Phonegap触发,因为webview有错误并且是静态的(当软键盘被触发时它永远不会resize)。 由于webview从不resize,因此永远不会触发事件。
我们可以在LinearLayoutSoftKeyboardDetect类中找到事件的触发。
谢谢大家!
- 未捕获的TypeError:无法设置null的属性’innerHTML’
- 在Android / PhoneGap上运行的jQueryMobile拒绝.load / .ajax
- 删除图像src属性
- 如何从PhoneGap / webapp将文件ftp到服务器?
- 为什么WebChromeClient.onProgressChanged和jquery的$(document).ready()回调之间有明显的延迟?
- JS确认android webview中的框不起作用
- 页面加载与jQuery-mobile转换不同
- Android JQuery focus()解决方法
- 从Java调用Android的WebView中的jQuery函数?