在Mac瀏覽器中,當metakey關閉時,javascript不會接收大多數鍵的鍵入事件(其他鍵修飾鍵似乎是一個例外)。使用此的jsfiddle證明(重點結果區域,並嘗試像CMD + X,則X將不會收到keyup事件): http://jsfiddle.net/mUEaV/爲什麼在Mac瀏覽器中按下metaKey時Javascript會丟失keyUp事件?
我在爲Chrome,FF,Safari和Opera穩定版本轉載此。 Windows 7中的控制鍵似乎也沒有發生同樣的情況。
操作系統是否劫持了keyup事件?這似乎特別奇怪,因爲使用metakey的命令(例如保存,查找,剪切,複製等等)都在keydown上激活,而不是在keyup上激活,並且可以被javascript劫持得很好。
對不起,要問一個明顯愚蠢的問題,但作爲一個非Mac用戶:哪一個是meta key? (我有一個Mac鍵盤,但它連接到一臺Ubuntu PC上。) – 2012-08-05 21:01:55
@DavidThomas我用另一種方式使用鍵盤:一個帶有mac的windows鍵盤:)對我來說,meta鍵是windows鍵,**默認設置**。 (在Mac上,你可以改變它,*以保持一致!*:O) – tomsmeding 2012-08-23 13:16:12
這是OS X的預期行爲: http://stackoverflow.com/questions/4001565/missing-keyup-events-on - 有意義的鍵組合 - 例如,直到開始選擇 – NateS 2013-03-08 12:38:41