2013-07-05 78 views
9

現狀:如何捕捉鍵盤輸入而不可見的輸入字段中的JavaScript

  • HTML5與jQuery Mobile的iPad上(編輯:HTML5頁面將在PhoneGap的應用程序)
  • 外接鍵盤連接
  • 文本輸入字段隱藏,沒有可見的輸入字段
  • 沒有關注文本輸入字段 - >沒有顯示軟鍵盤

目標:

而不顯示&聚焦在文本輸入字段
  • 鍵盤輸入是
    • 捕捉鍵盤輸入是可變的短語(例如名1,對象2,phrase3)
    • 剛開始打字和頁面應該捕捉輸入

    - >如何檢測鍵盤輸入到隱藏的輸入字段?

    我知道的keydown /按鍵/ KEYUP事件,但他們似乎需要一個可見的輸入字段

  • +2

    '$(document).on('keyup',$ .mobile.pageContainer,function(){});'嘗試一下。或'$('body')。on('keyup',function(){});' – Omar

    +0

    這是一個工作示例。如果這是你需要的,請告訴我。 http://jsfiddle.net/Palestinian/sG9n8/ – Omar

    +0

    對於我來說,下面的兩條語句和答案都使它只能專注於輸入字段 - 但是如果輸入字段是隱藏的,則不會捕獲鍵盤輸入。我忽略了哪些陷阱? –

    回答

    1

    您可以將事件綁定到這樣的文件: -

    $(document).bind('keyup', function(e) { 
        alert('testing'); 
    }); 
    
    0

    你也可以簡單地無需改變其DOM/CSS可見性狀態,將元素定位在畫布外。

    <style> .inputValue{position:absolute;left:-99999px} </style> 
    <input type="text" class="inputValue" autofocus="autofocus"/> 
    

    然後在任何給定的時刻,當你需要輸入值時,你可以調用下面的腳本。

    <script> $('.inputValue').val(); </script>