2014-12-03 112 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 我很新在這裏如此,所以我不知道如果我能回答我自己或我應該修改我的問題或作出評論。