taw*_*taw 68 firefox keyboard-shortcuts website
许多网站,尤其是所有涉及富文本编辑的网站(这个网站也有罪),窃取了通常用于控制 Firefox 的键盘快捷键,并让它们做其他事情。当我按下 Cmd-number、Cmd-L、Cmd-T 或 Cmd-K 之类的东西时,它完全令人气愤,但它没有按我想要的那样做。我可以让它停止吗?
实际上,如果我可以禁止窃取所有 Cmd-* 快捷方式,那可能是最好的。我从未见过它们用于任何有用的事情。是否可以?
Mar*_*.H. 26
感谢 Greasemonkey 的新@run-at
属性,这现在成为可能!
我从这个脚本和这个脚本中获得灵感,将它们组合成一个成功拦截键盘快捷键Ctrl+T和Ctrl+ 的用户脚本S。我在 Firefox 17 ESR 和 Firefox 25 中进行了测试。
// ==UserScript==
// @name Disable Ctrl+s and Ctrl+t interceptions
// @description Stop websites from highjacking keyboard shortcuts
//
// @run-at document-start
// @include *
// @grant none
// ==/UserScript==
// Keycode for 's' and 't'. Add more to disable other ctrl+X interceptions
keycodes = [83, 84];
(window.opera ? document.body : document).addEventListener('keydown', function(e) {
// alert(e.keyCode ); //uncomment to find more keyCodes
if (keycodes.indexOf(e.keyCode) != -1 && e.ctrlKey) {
e.cancelBubble = true;
e.stopImmediatePropagation();
// alert("Gotcha!"); //ucomment to check if it's seeing the combo
}
return false;
}, !window.opera);
Run Code Online (Sandbox Code Playgroud)
Lam*_*art 19
提交错误 11 年后,Mozilla 终于开始处理这个流行的功能请求,现在它似乎工作正常(在 Firefox 66.0.3/Ubuntu 中测试)。
(感谢@PerJohansson 指出自 FF 59 以来,他们使设置变得更加难以找到。)
我刚刚用一些更简单的步骤更新了这个答案,并在 Firefox 75 上进行了测试。
您可以在下面找到每个步骤的屏幕截图。
View Page Info
从上下文菜单中进行选择。Permissions
选项卡Override Keyboard Shortcuts
设置。以下是每个步骤的一些最近(2020 年 4 月)屏幕截图。
Permissions
选项卡:Mozilla 在Page Info
此处提供有关窗口的更多信息:
https://support.mozilla.org/en-US/kb/firefox-page-info-window
如果您对此修复的历史感兴趣,这里是相关的 Mozilla 票证:https : //bugzilla.mozilla.org/show_bug.cgi?id=380637和 https://bugzilla.mozilla.org/show_bug。 cgi?id=1445942
广泛的研究表明,从当前版本的 Firefox (3.6.x) 开始,这是不可能的 - 所有键绑定冲突都通过优先级解决:系统 > 网站 > Firefox - 这是一个相当愚蠢的顺序。我尝试过的插件似乎都无法修复它。
可能它在未来的版本中变得可行,但现在的答案是 - 不可能。
由于问题似乎是 JavaScript 键盘事件窃取按键,是否无法构建一个 JavaScript 脚本(通过 Greasemonkey 使用)来解除这些所有键盘事件的绑定,从而将每个快捷方式的正确用法返回给浏览器?
我不确定这有多可行,但是具有更多 JavaScript / Greasemonkey 经验的人可能会提供帮助(可能值得询问 SO)。
归档时间: |
|
查看次数: |
14083 次 |
最近记录: |