我正在開發一個Chrome擴展與鉻34(即開發通道),和新的chrome.commands API,主要是爲了獲得媒體密鑰的支持。鉻擴展鍵盤命令似乎並沒有註冊
在我的manifest.json,我目前只用在官方文檔中給出的示例代碼:
"commands": {
"toggle-feature-foo": {
"suggested_key": {
"default": "Ctrl+Shift+Y",
"mac": "Command+Shift+Y"
},
"description": "Toggle feature foo"
}
}
在我的背景頁:
chrome.commands.getAll(function(commands){
console.log(commands)
})
chrome.commands.onCommand.addListener(function(command) {
console.log('Command:', command);
)}
首先,鍵盤快捷鍵AREN沒有註冊:
Array[1]
0: Object
description: "Toggle feature foo"
name: "toggle-feature-foo"
shortcut: ""
注意'快捷方式'是空白的。 https://developer.chrome.com/extensions/commands#method-getAll提到快捷方式僅在「活動」時才顯示。但我不確定爲什麼這個快捷方式不是'主動'(我使用的是OS X 10.9,如果這很重要的話)。
其次,實際按下Cmd Shift Y或Ctrl Shift Y不會觸發後臺頁面中的事件。
如何讓我的背景頁面接收鍵盤命令?
謝謝@berrberr!官方文檔沒有在擴展頁面中提到鍵盤快捷鍵。我現在唯一的問題是,在設置快捷方式時媒體按鍵(例如,播放暫停)實際上不起作用 - 根據文檔,它們也應該沒問題。將看看商店是否有任何不同的開發模式... – mikemaccana
任何人放心,我是否開發模式不會自動註冊快捷鍵? –