在 Lion 上的 Safari 等应用程序中按 Esc 键时不要退出全屏

Fad*_*adi 59 keyboard-shortcuts fullscreen osx-lion

在 OS X Lion 中,按ESC键退出全屏模式。不幸的是,尤其是在使用 Safari 时,ESC它用于其他功能,例如在 Javascript 按键事件处理中。我不希望 Lion 在按 Esc 键时退出全屏模式,但我找不到禁用该功能的地方。

我已经知道进入/退出全屏模式的键盘快捷键 ( Cmd- Ctrl- F)。我想禁用ESC快捷方式。我一直在谷歌搜索,但找不到任何答案。

Dan*_*eck 7

对于 Web 浏览器,特别是使用具有启用或需要使用Escape密钥同时不阻止全屏关闭的行为的站点(如Stack Exchange 站点),您可以使用以下用户脚本:

// ==UserScript==
// @name           Keep Full Screen
// @namespace     http://superuser.com/q/315949
// @description    Prevents Escape key from leaving full screen.
// @include      http://*
// ==/UserScript==
document.onkeydown = function (evt) {
    if (evt.keyCode == 27) evt.preventDefault();
}
Run Code Online (Sandbox Code Playgroud)

要在浏览器中运行它,请为您的浏览器使用任何用户脚本引擎。

  • 对于 Safari 5,您可以使用 Safari 扩展NinjaKit(在GitHub 上)。这就是我使用的。
  • 对于 Chrome,您可以使用其NinjaKit变体。
  • 对于 OS X 上的任何其他 Safari,您可以使用 SIMBL 插件GreaseKit。不知道它是如何最新的。

  • 是的,这对我不起作用,在撰写本文时,我在使用 Safari 8.0 (10600.1.25) 的 Yosemite Beta 5 中,并在 Safari 中使用 NinjaKit 作为用户脚本引擎。Escape 键不断打破全屏,对我来说,当我在地址栏中并在其中按 Esc 时会发生这种情况。(在编辑文本时它有一些有用的功能......)我假设 GreaseKit 不再起作用,因为它的日期是 2009 年,并且一个快速的谷歌似乎表明它不再起作用了。有任何想法吗?如此令人沮丧,难怪 Chrome 是首选的主要浏览器,即使在 Apple 自己的操作系统上也是如此...... (2认同)

小智 6

Try OptionEsc,这对我有用。


S3R*_*3RK 5

我没有找到 macOs Sierra 及更高版本的答案。所以这就是我解决这个问题的方法。

因为已经有人建议我将 ESC 重新映射到 ? + 电调。它完成工作,甚至完成分配给关键工作的其他一些功能。您将能够退出某些网站上的全屏视频,但不会中止页面加载。

首先,您需要安装Karabiner-elements才能重新映射密钥

  1. 安装brew /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  2. 安装木桶 brew tap caskroom/cask
  3. 安装karabiner-elements brew cask install karabiner-elements

我专门为此问题创建了自定义的“复杂修改”。要安装此修改,您必须:

  1. 打开 karabiner-elements 并转到“复杂修改”选项卡
  2. 单击“添加规则”按钮,然后“从 Internet 导入更多规则”
  3. 导入修改“在Safari中按ESC时不退出全屏”


Tam*_*man 2

您可能的选择包括:

  1. 为其他功能设置替代快捷方式,因为它ESC是由操作系统和浏览器保留的。

  2. 调整源/汇编机器代码以重新绑定ESC操作系统和浏览器的密钥。

  3. 针对应用程序开发人员(即 Google 电子表格)提交错误/功能请求以使用 ESC 事件而不是让它通过。

  4. 向 Apple 提交错误,因为应用程序首先存在,并且 Apple 无缘无故地重新利用了密钥。

  • #1 我可以落后。#2 几乎是半开玩笑的,甚至让人发笑。 (3认同)