如果(且仅当)站点特定的热键已在 Opera 中映射,我该如何禁用它们?例如,我使用<C-b>
而不是<Right>
和<C-h>
而不是<BS>
。在 Stack Overflow/Super User 上,它们分别生成**strong text**
和## Heading ##
。我不希望这种情况发生。我可以检查 Super User/Stack Overflow/some_other_site 的 javascript 并编写一个 userjs 来完成这项工作,但这种方法并不通用。
我在 Gentoo Linux 中使用 Opera-10.51_pre6252。
答案1
以下 userjs 可防止触发指定热键的事件(请参阅以 开头的长数组["h"
)。有人知道如何自动获取 opera 使用的热键列表吗?(无需任何外部脚本来监视 opera ini 文件并在更改时生成类似的 userjs)。
// ==UserScript==
// @include *
// ==/UserScript==
(function() {
window.opera.addEventListener("BeforeEventListener.keypress", (function(e) {
if(e.event.ctrlKey || e.event.metaKey) {
var s=String.fromCharCode(e.event.keyCode).toLowerCase();
if(["h", "b", "d", "f", "t", "w", "z", "n", "g", "c", "\t"].indexOf(s)!=-1) {
e.preventDefault();
}
}
}), false);
})();