Chrome API可以讓用戶從擴展彈出菜單或選項頁面中分配鍵盤快捷鍵嗎?沒有他們必須去擴展頁面,滾動到底部並打開鍵盤快捷菜單。從彈出菜單或選項分配命令鍵盤快捷鍵
1
A
回答
4
沒有辦法以編程方式指定快捷鍵,但可以在擴展彈出窗口中添加一個按鈕或鏈接,以打開內置對話框。
popup.html:
<button id="hotkey">Assign a shortcut key</button>
<script src="popup.js"></script>
popup.js:
document.getElementById('hotkey').onclick =() => chrome.tabs.create({
url: 'chrome://extensions/configureCommands'
});
注:
鉻://網址只能通過鉻/ WebExtensions API方法被打開,
但不能通過<a href="...">
直接鏈接。您仍然可以使用標準的
<a>
鏈接與上面顯示的點擊偵聽器;只是不要忘了阻止默認點擊事件,以避免在控制檯中的錯誤:document.getElementById('hotkey').onclick = event => { chrome.tabs.create({url: 'chrome://extensions/configureCommands'}); event.preventDefault(); };
在Opera瀏覽器的URL是
opera://settings/configureCommands
可以使用navigator.userAgent
串在檢測瀏覽器Firefox沒有UI來自定義WebExtensions命令快捷鍵。
一個可能的增強是首先檢查是否有這樣的網址在一些標籤,按我們的按鈕已經打開:
chrome.tabs.query({url: 'chrome://extensions/configureCommands'}, tabs => { if (tabs && tabs[0]) { chrome.tabs.update(tabs[0].id, {active: true}); chrome.windows.update(tabs[0].windowId, {focused: true}); } else { chrome.tabs.create({url: 'chrome://extensions/configureCommands'}); } });
但是,它不會找到對話框中手動調用對鉻:// extensions頁面因爲它不會更改網址。
在manifest.json中可能需要
"permissions": ["tabs"]
或至少["activeTab"]
。
相關問題
- 1. 鍵盤快捷鍵爲WPF菜單項
- 2. 鍵盤快捷鍵的命令路由
- 3. xcode功能菜單鍵盤快捷鍵
- 4. eclipse egit:Team - > Show in History的菜單項和鍵盤快捷鍵
- 5. 鍵盤快捷鍵
- 6. 分配快捷鍵
- 7. 上下文菜單不開放的兒童鍵盤快捷鍵的菜單項
- 8. 鍵盤快捷鍵重命名變量?
- 9. 指定快捷鍵命令
- 10. Netbeans鍵盤快捷鍵跳出語錄
- 11. 菜單快捷鍵範圍
- 12. 鍵盤快捷鍵在MDI
- 13. 禁用鍵盤快捷鍵
- 14. JButton鍵盤快捷鍵
- 15. 聽鍵盤快捷鍵(c#)
- 16. 實現鍵盤快捷鍵
- 17. 鍵盤快捷鍵表格
- 18. Python鍵盤快捷鍵
- 19. 使用鍵盤快捷鍵
- 20. WebBrowser鍵盤快捷鍵
- 21. iPhone/iPad鍵盤快捷鍵?
- 22. TextMate的鍵盤快捷鍵?
- 23. 打開瀏覽器操作的彈出式鍵盤快捷鍵
- 24. 您可以爲Windows CMD命令設置鍵盤快捷鍵嗎?
- 25. 如何獲得給定鍵盤快捷鍵的emacs命令?
- 26. 鍵盤快捷鍵JQUERY - 命令+ S,控制+ S
- 27. xfce4:是否有鍵盤快捷鍵的命令列表?
- 28. TextMate:如何找到與鍵盤快捷鍵相關的命令?
- 29. 如何獲取給定emacs命令的鍵盤快捷鍵?
- 30. 命令行C和鍵盤快捷鍵(在Mac OS中)
出於興趣,你在哪裏挖掘出'chrome:// extensions/configureCommands' URL? – Xan
它是幾個月前在[Stylus](https://github.com/openstyles/stylus)中添加的,這是舊版Stylish擴展的新分支。 – wOxxOm
哦,它實際上在https://developer.chrome.com/extensions/commands#usage _的文檔中。「用戶可以從chrome:// extensions/configureCommands對話框中手動添加更多快捷方式。」_ – Xan