一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

javascript 鍵盤事件總結 推薦

在form中, submit的快捷鍵是 enter,reset的快捷鍵是 esc。不過在IE6,safari4,ff3.5,opera10,chrome中,按Enter,不但激發form的submit事件,同時也會激發提交按鈕的onclick,激發順序為提交按鈕的 onclick → form 的 onsubmit。

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
不過并不止提交按鈕會激發form的submit事件,連同上面的歸納如下:

1. 如果表單里有一個type="submit"的按鈕,回車鍵生效。
2. 如果表單里只有一個type="text"的input,不管按鈕是什么type,回車鍵生效。
3. 如果按鈕不是用input,而是用button,并且沒有加type,IE下默認為type=button,FX默認為type=submit。
4. 其他表單元素如textarea、select不影響,radio checkbox不影響觸發規則,但本身在FX下會響應回車鍵,在IE下不響應。
5. type="image"的input,效果等同于type="submit"。不知道為什么會設計這樣一種type,不推薦使用,應該用CSS添加背景圖合適些。

除了在按鈕中綁定鍵盤事件外,瀏覽器還有一個accesskey 屬性來指定鏈接的快捷鍵。注意 accesskey 的設置如果和瀏覽器的菜單相同,會優先于菜單。在IE中,快捷鍵是 alt + 設置的鍵值,FF是Alt+Shift+ 設置的鍵值。 在IE 中,a元素的 accesskey 只是使焦點轉移到鏈接上,并不等同于點擊,FF 中則相當于點擊。與他對比的是,input type=checkbox 的 accesskey 效果不論在IE 還是 FF 中都是點擊。另外,我們還可以配合label標簽來加強語義,個人是十分推薦這種做法的。

剩下的就需要編程了。Javascript事件主要通過以下三個事件來捕獲鍵盤事件:onkeydown,onkeypress與onkeyup。該三個事件的執行順序如下:onkeydown -> onkeypress ->onkeyup。在一般情況下,采用三種鍵盤事件均可對鍵盤輸入進行有效的響應。當在實際使用中,會發現這幾者有些不同的差別。

onkeypress事件不能對系統功能鍵(例如:后退、刪除等,其中對中文輸入法不能有效響應)進行正常的響應,onkeydown和onkeyup均可以對系統功能鍵進行有效的攔截,但事件截獲的位置不同,可以根據具體的情況選擇不同的鍵盤事件。

由于onkeypress不能對系統功能鍵進行捕獲,導致window.event對象的keyCode屬性和onkeydown,onkeyup 鍵盤事件中獲取的keyCode屬性不同,主要表現在onkeypress事件的keyCode對字母的大小寫敏感,而onkeydown、 onkeyup事件不敏感;onkeypress事件的keyCode無法區分主鍵盤上的數字鍵和副鍵盤數字鍵的,而onkeydown、onkeyup 的keyCode對主副鍵盤的數字鍵敏感。


[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
我們可以利用以下腳本來監聽網頁中的鍵盤事件,一旦用戶按下Enter鍵便開始你綁定的事件。
復制代碼 代碼如下:
function getKey(e){
e = e || window.event;
var keycode = e.which ? e.which : e.keyCode;
if(keycode == 13 || keycode == 108){ //如果按下ENTER鍵
//在這里設置你想綁定的事件
}
}

// 把keyup事件綁定到document中
function listenKey ( ) {
if (document.addEventListener) {
document.addEventListener("keyup",getKey,false);
} else if (document.attachEvent) {
document.attachEvent("onkeyup",getKey);
} else {
document.onkeyup = getKey;
}
}

最后附上,鍵盤中所有按鈕的keycode一覽
字母和數字鍵的鍵碼值(keyCode)
按鍵鍵碼按鍵鍵碼按鍵鍵碼按鍵鍵碼
A65J74S83149
B66K75T84250
C67L76U85351
D68M77V86452
E69N78W87553
F70O79X88654
G71P80Y89755
H72Q81Z90856
I73R82048957

數字鍵盤上的鍵的鍵碼值(keyCode)功能鍵鍵碼值(keyCode)
按鍵鍵碼按鍵鍵碼按鍵鍵碼按鍵鍵碼
0968104F1112F7118
1979105F2113F8119
298*106F3114F9120
399+107F4115F10121
4100Enter108F5116F11122
5101-109F6117F12123
6102.110    
7103/111    

控制鍵鍵碼值(keyCode)
按鍵鍵碼按鍵鍵碼按鍵鍵碼按鍵鍵碼
BackSpace8Esc27Right Arrow39-_189
Tab9Spacebar32Down Arrow40.>190
Clear12Page Up33Insert45/?191
Enter13Page Down34Delete46`~192
Shift16End35Num Lock144[{219
Control17Home36;:186/|220
Alt18Left Arrow37=+187]}221
Cape Lock20Up Arrow38,<188'"222

另外我們還可以用event.altKey,event.ctrlKey,event.metaKey(上有微軟的旗幟),event.shiftKey來判斷對應的鍵是否被按下,因為它們都是返回一個布爾值。

JavaScript技術javascript 鍵盤事件總結 推薦,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲性久久| 一道精品视频一区二区三区图片 | 巨臀中文字幕一区二区视频 | 中日韩美中文字幕 | 久久99草| 91久久打屁股调教网站 | 福利视频一区青娱 | 91视频网址入口 | 婷婷激情丁香 | 亚洲天堂一区二区 | 亚洲第一综合网 | 一级女毛片 | 国产女人视频 | 日韩午夜在线视频 | 亚洲国产精品免费在线观看 | 色婷婷影院在线视频免费播放 | 日韩中文字幕在线播放 | 国产精品_国产精品_国产精品 | 午夜在线免费视频 | 在线播放一区二区精品产 | 开心激情五月婷婷 | 国产一区91 | 久久精品成人免费网站 | www.激情| 四虎影视永久免费观看网址 | 大陆5g天天看天天爽免费 | 欧美一区二区三区婷婷月色 | 四虎影视8848a四虎在线播放 | 久久中文字幕一区二区三区 | 欧美videos极品另类 | 2022久久免费精品国产72精品 | 真正国产乱子伦高清对白 | 国内精品久久久久影院网站 | 久久一本色系列综合色 | 国产视频中文字幕 | 色色视频免费网 | 日韩午夜片 | 美女扒开腿被男人猛视频 | 好吊日在线 | 免费国产一区二区在免费观看 | 秒播在线|