正如我們了解到的,瀏覽器在最開始設計的時候并沒有一個標準,大家都像做實驗似的,最后的成品雖然 " /> 国产亚洲精品拍拍拍拍拍,伊人久久精品成人网,大jjjj免费看视频

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

JavaScript Event學習第十一章 按鍵的檢測

第一個問題是對于按鍵事件來說根本就沒有標準,按照規范說的:包含鍵盤等輸入設備的事件模型會在以后的DOM規范中作出解釋。

正如我們了解到的,瀏覽器在最開始設計的時候并沒有一個標準,大家都像做實驗似的,最后的成品雖然是有用的,但是肯定造成了兼容性的問題。按鍵問題也不例外:這里有兩個屬性能檢測到用戶按下了什么鍵,雖然有足夠的理由為什么需要兩個屬性,但是依然并不是所有的瀏覽器都支持。

另外,在keypress與keydown和keyup之間還有一些很重要的區別。

最后就是windows和mac的區別了,在mac上要檢測用戶按下了什么鍵簡直比在windows下難了N倍。

keyCode和charCode
能檢測到用戶按下了什么鍵的兩個屬性就是keyCode和charCode了。簡單說來:keyCode是用來檢測用戶真正按下了鍵盤上那個鍵的,而charCode則是給出鍵入字符的ASCII碼。有一些小問題需要注意:大寫的A和小寫的a的keyCode是一樣的,因為他們在鍵盤上就是一個鍵;但是charCode不一樣,因為他倆是兩個不同的字符。

IE和Opera不支持charCode。然而他們會在keyCode里面保存字符信息,但是只是在onkeypress的情況下,在onkeydown/up情況下包含的是鍵的信息。

字符和數字鍵
讓我們以一個簡單的例子開始。小寫a的ASCII碼是97,大寫的是65。那么在兩種情況下,當用戶在鍵盤上敲下相同的鍵的時候,什么時候的鍵值是65呢(相當于大寫的A)

keyCode

image

 

charCode

image
因此,在onkeydown/up的情況下,你能夠從keyCode里面得到鍵值。在onkeypress情況下,想要得到字符值就要使用:evt.charCode || evt.keyCode.

標點符號
我還是決定不對標點符號鍵做測試了。我懷疑這不僅跟瀏覽器和操作系統有關,還可能跟鍵盤設置和默認語言有關。我一般用的是荷蘭語版的windows,如果跟美國版的101鍵的鍵盤相比有很大出入,我一點都不會覺得意外。

比如說shift+,鍵出來的應該是<,但是我測試的ASCII碼的結果卻是'?'的。當我發現了這個問題,我決定還是不在標點符號鍵的問題上浪費時間了.

特別鍵
功能鍵就是只那些不能打印出來的但是卻具有一定功能的鍵。比如shift、ESC、enter等等都是功能鍵。

一些說明:
1、一般,mac的可靠性比windows要差,有些鍵可能檢測不到

2、IE不會觸發下面這鍵的keypress事件:delete, end, enter, escape, 功能鍵, home, insert, pageUp/Down 和 tab。

3、在onkeypress事件下,Safari會給下面這些鍵給出很奇怪的keyCode值:delete, end, 功能鍵, home 和 pageUp.Down。但是在onkeydown/up下面就很正常。

4、Alt,Cmd,Ctrl和shfit鍵在mac上無法探測,不過Opera下面例外。然而你卻可以使用altKey,ctrlKey,shfitKey這些屬性。

如果你需要探測這些鍵,你就探測一下載onkeydown/up下面的keyCode就行了,算是給自己幫忙了,onkeypress和charCode就忘掉吧。

原文后面有個大的鍵值的列表,還有一個測試框,有興趣的童鞋可以移步。
翻譯地址:http://www.quirksmode.org/js/keys.html

轉載請保留以下信息
作者:北玉(tw:@rehawk)

JavaScript技術JavaScript Event學習第十一章 按鍵的檢測,轉載需保留來源!

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

主站蜘蛛池模板: 国产精品二区三区 | 性欧美乱妇高清come | 99久久久久国产精品免费 | 色视频免费观看 | 国产亚洲漂亮白嫩美女在线 | 91在线视频免费91 | 国内精品在线播放 | 国产成人宗合 | 国产高清免费视频 | 亚色在线视频 | 精品视频在线免费观看 | 天天操91| 色狠狠狠狠综合影视 | 亚洲欧美国产精品 | 激情15p| 91精品一区二区三区在线观看 | 5566夜色| 色噜噜狠狠狠综合曰曰曰88av | 日韩在线视频第一页 | 亚洲视频在线观看网站 | 色婷婷影视 | 色黄小视频 | 国产在线色视频 | 永久黄网站色视频免费观看 | 婷婷色影院 | 国产精品福利影院 | 日日摸夜夜添夜夜添人人爽 | 毛片特黄 | 97高清国语自产拍中国大陆 | 国产大陆亚洲精品国产 | 九九视频国产 | 一区二区日韩 | 国产青草视频在线观看 | 久久久久久久综合狠狠综合 | 成人精品第一区二区三区 | 欧美成人高清在线视频大全 | 国产一区二区免费不卡在线播放 | 国产精品伊人 | 成人精品视频在线 | 国产一级特黄一级毛片 | 国产区在线免费观看 |