具體如何封鎖更多的快捷鍵可以自行google搜尋。
這裡要說的是如何屏蔽後去執行自訂的事件。
這裡為了方便使用的Kibo做例子,使用google搜尋出來的結果一般都是javascript原生實現,很簡單的,這裡不做介紹。
這裡是實現了在一個textarea中enter進行保存的例子,屏蔽掉了原來的回車事件。
程式碼如下:
//鍵盤監聽
var areaKey = new Kibo($("#aac010")[0]);
areaKey.down('enter',doSave);
function doSave() {
event.keyCode = 0;
event.returnValue = false;
setTimeout(save, 300);
return false;
}
屏蔽js原有事件一般是keyCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,returnCode=0,return。 =false,return false;來實現的,關鍵是如何呼叫自訂的方法,如上面的save方法,如果直接把save方法寫到這裡,由於執行save需要一定時間,短時間的沒有返回false,會導致enter原有事件的觸發,不能起到屏蔽的作用,所以這裡使用setTimeout來呼叫自訂的方法。讓returun及時返回,這樣就不會觸發原有的事件。
具體原因並不清楚,如果有人有更好的方法,或知道原因可以留言,謝謝~~~