1. mousetrap github地址
https://github.com/ccampbell/mousetrap
2. 文檔地址
3. 使用筆記
Q:問題,R:解決方案
3.1 頁面中有input類型的dom節(jié)點并且在頁面上對該節(jié)點有點擊操作等
Q: 遇到input等輸入類型的dom節(jié)點,點擊后或者該節(jié)點獲取焦點后會導致快捷鍵的綁定事件被阻止,無法觸發(fā)快捷鍵的已綁定事件(checkbox,textarea等有同樣的)
R:使用mousetrap的dom節(jié)點綁定事件,將快捷鍵的操作綁定到body,這樣就算是編輯輸入框也同樣可以觸發(fā)之前綁定的快捷鍵(checkbox,textarea的問題也可以解決)
const MouseTrapBody = MouseTrap(document.body);
MouseTrapBody.bind(['shift', 'alt'], (e) => {
console.log(e)
}, 'keydown');