jQuery處理鍵盤事件,好比小說網站中常見的按左右鍵來實現上一篇文章和下一篇文章,按ctrl+回車實現表單提交,google reader和有道閱讀中的全快捷鍵操做...
本文講述jQuery處理按鍵的原理和方法html
jQuery處理鍵盤事件有三個函數,根據事件發生的順序分別是:jquery
1 |
keydown(); |
2 |
keyup(); |
3 |
keypress(); |
keydown()瀏覽器
keydown事件會在鍵盤按下時觸發,能夠在綁定的函數中歐可以返回false來防止觸發瀏覽器的默認事件.函數
keyup()post
keyup事件會在按鍵釋放時觸發,也就是你按下鍵盤起來後的事件網站
keypress()google
keypress事件會在敲擊按鍵時觸發,咱們能夠理解爲按下並擡起同一個按鍵spa
咱們怎麼才能獲取我按下的是A仍是Z仍是回車按鈕呢?code
鍵盤事件能夠傳遞一個參數event,其實說有的jQuery事件函數中均可以傳遞這麼一個參數orm
1 |
$( 'input' ).keydown( function (event){ |
2 |
alert(event.keyCode); |
3 |
}); |
上面代碼中的,event.keyCode就能夠幫助咱們獲取到咱們按下了什麼按鍵,他返回的是ascII碼,好比說上下左右鍵,分別是38,40,37,39
若是咱們要實現ctrl+Enter就是ctrl+回車提交表單
1 |
$(document).keypress( function (e) { |
2 |
if (e.ctrlKey && e.which == 13) |
3 |
$( "form" ).submit(); |
4 |
}) |