今天看到乙個需求,要是使用alt+a快捷鍵實現某個功能。
keydown keyup keypress都可以監聽鍵盤事件。
他們之間的區別在於:
// document.addeventlistener('keydown',(e)=>)
// document.addeventlistener('keypress',(e)=>)
document.
addeventlistener
('keyup'
,(e)
=>
)
以ctrl+c為例
document.
addeventlistener
('keydown'
,(e)
=>
})
當按下ctrl、alt、shift鍵時e對應的ctrlkey、altkey、shiftkey是為true的。mac電腦的command鍵是metakey
注意:這裡只能是ctrl、alt、shift 加乙個普通鍵。
我的思路是:在指定時間內(比如300ms),如果按了某鍵,就將改鍵的key存入指定物件上。如果超時或者已經觸發了,就將儲存的物件還原。
然後判斷物件上是否同時存在我們要監聽的按鍵即可。
// 普通兩鍵示例
let firsttime =
0let doubleevent =
document.
addeventlistener
('keyup'
,(e)
=>
else
if(currenttime-firsttime>
300)
}else
if(doubleevent.b&&doubleevent.c)
firsttime =0}
})
ps:有其他思路的大佬,可以指教一下。謝謝 js監聽鍵盤事件
一 監聽全域性鍵盤按下事件,例如監聽全域性回車事件 d ocum ent key down fun ctio n ev ent if e vent key code 13 a lert 你按 下了en ter 二 監聽 某個元件 鍵盤按下 事件 如 butt on按鈕 do cume nt keyd...
js監聽鍵盤 滑鼠組合操作
鑑於各種需求問題,有自己寫了乙個甘特圖,比較簡單,如果這個不符合大家需求,可以看看這個,可直接執行 近期做一款甘特圖的元件,想要實現 ctrl 滾輪 放大縮小甘特圖時間最小刻度的功能,剛開始以為會有組合監聽的辦法,後來發現行不通,鍵盤和滑鼠監聽的方式不同。下面大致說一下實現方式。1 按鍵監聽 js無...
JS監聽鍵盤點選事件
字母和數字鍵的鍵碼值 keycode 按鍵鍵碼 按鍵鍵碼 按鍵鍵碼 按鍵鍵碼a65 j74s83 149b66 k75t84 250c67 l76u85 351d68 m77v86 452e69 n78w87 553f70 o79x88 654g71 p80y89 755h72 q81z90 856...