2011-06-15 73 views
2

我有一個按鍵分配給一個div,例如按A將顯示div,再次按下隱藏,問題是這也發生在表單元素,已經看過其他問題和答案,但沒有工作爲了我。排除按鍵上的表單元素

我使用:

$(document).keypress(function(ev) { 
if (ev.which === 65 || ev.which === 97) { // 'A' or 'a' 
    $('#mainMenu').toggle(); 
} 
}); 

我怎樣才能排除這個文本框?

回答

4

檢查ev.target

類似:

if ($(ev.target).is(":input")) { 
    return; 
} 
+2

非常真實..現場測試案例:http://jsfiddle.net/CMxGa/ – 2011-06-15 13:00:20

+0

驚人..這麼簡單,漂亮的一個,多謝你們。 :) – Naota 2011-06-15 13:08:28