2014-12-03 80 views
3

我想拦截“隐藏键盘按钮”特定于JavaScript中的Ipad。我到处搜索,但无法找到正确的键码。 我按任何键,我得到一个键码地图(字符,但也为输入,空间和删除..)。检测隐藏Ipad Iphone在Javascript中的键盘按钮

这是我所要完成的

$("#mydiv").on("keydown", function(event) { 
    if (event.which == xx){ 
     //do something 
    } 
} 

其中xx是我的“隐藏键盘按钮”键码的例子。当按下按钮和KeyCode时,没有方法被调用给委托。

我看了一下detect iPad keyboard Hiding button,但我得到了一个不同级别的解决方案(使用Xcode),但我需要一个Javascript解决方案。

希望有人可以帮忙。

enter image description here

回答

3

我发现iPad的IOS7一个workaroud。我将测试IOS8以确保它可以正常工作。所以基本上我在每个FOCUSOUT事件(对于我所有的文本)都创建了一个监听器,并且我调用了我的函数。

当您打开键盘并关闭“键盘”时,它会闪烁。当您选择另一个文本字段或按钮时它不会触发,因为它的目标是null。如果与keydown结合使用,则只能在释放键盘时才能保存多个值并调用提交函数。 它适用于我的特定项目。

document.addEventListener('focusout', function(e) { 
     if (e.relatedTarget == null){ 
      alert("close keyboard without click on something else"); 
      callYourFunction(); 
      } 
    }); 

P.S 我很新在这里如此,所以我不知道如果我能回答我自己或我应该修改我的问题或作出评论。