2012-05-03 164 views

回答

1

編輯:你想模擬頁面上功能按鍵或監聽來自用戶物理按鍵?如果你想要程序觸發功能鍵操作,你不能。正如Rob指出的那樣,腳本事件只激活腳本事件監聽器,並且不會觸發默認行爲。

爲了檢測功能的按鍵,您需要將事件綁定到keyup - keypress,這不火的幾個非打印按鍵,如功能鍵和方向鍵。一些功能鍵已經完成(F1打開幫助,F5刷新等)。如果您有足夠的理由來阻止這種行爲(例如,您正在製作一個身臨其境的全屏應用,例如不應顯示正常瀏覽器行爲的VNC查看器),您可以使用preventDefault對​​停止潛在的破壞性操作:

document.documentElement.addEventListener("keydown", function(e) { 
    if(e.keyCode == 112) { 
     // if F1 is pressed, don't open help 
     e.preventDefault(); 
    } 
}); 

要了解如何處理Chrome擴展程序的按鍵操作,請參閱我的回答Activate extension via short cut key;這應該正是你剩下的需要。簡述:

  • 我上面給了那張在被添加到每一頁content script代碼

  • 處理功能執行一些動作,無論是內部網頁上的內容腳本或passing a message到事件後臺頁面

+0

感謝您的回答,是的我想模擬鉻擴展的功能鍵。防爆。在擴展頁面有一個按鈕,當用戶點擊按鈕時,我想實際模擬功能鍵。幫助我做到這一點。 – 1509

+0

@ Nvn1509這是**不可能**,原因有兩個:1. Chrome擴展程序無法訪問'chrome:// extension /'URL。 2.腳本鍵事件永遠不能用於觸發默認行爲。 –

+0

Thanks.I通過它可以完成。 – 1509

相關問題