2013-07-25 31 views
1

我試圖爲我的應用程序實現鍵盤快捷鍵。我想要使​​用ALT + Q組合。但是,當我嘗試運行代碼並按ALT鍵時,它將焦點置於瀏覽器菜單欄控件上,並失敗。ALT後跟Q(客戶快捷方式)不能在瀏覽器中使用javascript

我試圖通過幾種方法,如停止事件傳播,

function KeyDownEventHandler() { 
    if (event.keyCode == 18) { 
     //stop code 
    } 
} 

stopPropagation(event); 
CancleBubbling(); 
return false; 
event.preventDefault(); 

不過它的行爲方式。編輯 - 其實問題不在於檢測。當用戶按下ALT鍵並釋放它,然後按下Q鍵時,它會突出顯示瀏覽器菜單。它不調用自定義快捷方式的函數。

它是瀏覽器的默認行爲嗎?我們可以覆蓋它嗎?

請幫助相同。
由於

回答

0

UPDATE

這裏是一個fiddle檢測準確 「ALT + Q」 序列:

document.onkeydown = KeyCheck; 
var previousKeyCode = 0; 
function KeyCheck(e) { 
    var KeyID = (window.event) ? event.keyCode : e.keyCode; 
    switch (KeyID) 
    { 
     case 18: 
      previousKeyCode = 18; 
      break; 
     case 81: 
      if (previousKeyCode == 18) { 
       alert("ALT+Q Pressed!!!") 
      } 
      previousKeyCode=KeyID; 
      break; 
     default: previousKeyCode=KeyID; 
    } 
} 
+0

在IE10它Flash的菜單欄則當警報出現 – Adam

+0

關閉它,我不太明白ie10有什麼問題。在我的電腦IE10 FF和鉻工作相同 – MaVRoSCy

+0

哦,可能是我的電腦上的東西 – Adam

相關問題