2011-04-12 325 views
22

有没有办法在Google Chrome中禁用和替换快捷命令?我想将Chrome用于只能访问一个站点的公用计算机。正因为如此我想禁用像按Ctrl + 标签按Ctrl + 牛逼Alt键 + F4,我想改变F11到这样的命令按Ctrl + Shift组合键 + Alt + J(示例)阻止用户退出全屏模式。在Google Chrome中禁用快捷键

网络上的设置阻止一切,但一个特定的域,但现在我想阻止用户退出浏览器。

BR 安德烈亚斯

+2

显然,Chrome OS是答案; -p – 2011-04-12 15:16:05

+5

编写自己的浏览器可能会更简单。 – 2011-04-12 15:18:26

回答

3

Chrome提供了Kiosk模式,但不会阻止用户使用OS键盘快捷键(如ALT + F4 ,这是不是Chrome浏览器的一部分。Windows处理那些) 。要在Kiosk模式下启动它,使用这些参数运行它:

chrome.exe --kiosk http://www.google.com 

我的公共图书馆实际上是做了一件相当真棒:他们安装了一个极小的Debian的基础上他们的亭,并在每一个运行的谷歌浏览器。没有关闭按钮,也没有桌面进入,所以这实际上阻止了所有的CTRL + ALT + 删除黑客在那里。 ALT + F4也不起作用,并通过右键单击关闭浏览器可立即打开另一个。

他们却忘记摆脱GRUB的10个秒超时,它可以让用户(当然,我)进入恢复模式-_-,所以我与他们合作,得到固定的...

我d认真考虑Linux,因为您可以在多台计算机上快速安装,基本上可以避免病毒和安全问题。但缺点是没有一个“管理员面板”可供您调整。你必须拨出nano(对不起,不能习惯vim)并编辑一些配置文件。

+0

你能告诉你更多关于你的公共图书馆吗,他们是如何禁用Alt + F4的? – 2012-09-01 10:29:38

+0

似乎即使在Kiosk模式下,Chrome仍允许使用快捷键,例如Ctrl-T,Ctrl-N和Ctrl-W。思考? – 2013-08-12 19:10:18

+0

@LeeOlayvar:为此,您可以使用Qt4的QWebkit小部件制作一个简单的全屏浏览器。它只接受右键点击,你也可以禁用它,所以你唯一需要担心的是键盘输入和导航,但这并不难解决。 – Blender 2013-08-12 23:21:32

6

最近刚刚遇到了同样的亭式问题(不能够禁止在Chrome中的所有键)我终于发现,我想我会分享的解决方案:

使用node-webkit我创建了以下package.json文件:

{ 
    "name" : "mykiosk", 
    "window" : { 
     "fullscreen" : true, 
     "toolbar" : false 
    }, 
    "main" : "http://the-one-and-only-allowed.url/" 
} 

启动与:./nw

所有功能键被封锁。 Ctrl + N/T不创建选项卡。这是相当不错的

最后一个的JavaScript /的onload招禁用右键单击快捷菜单:

window.oncontextmenu = function(ev) { 
    ev.preventDefault(); 
    ev.stopPropogation(); 
    return false; 
} 
+0

不错,你的解决方案停止在Windows上的所有内容,但alt + f4组合,也许我可以用alt-f4的捕获事件编译nw的一个版本? – 2015-03-18 06:39:23

+0

我从来没有试过窗户。我不知道有什么方法可以防止alt-f4杀死窗口。如果你设法编译一个捕获alt-f4的nw版本,我有兴趣尝试它。 – chriskelly 2015-04-23 23:07:08

+0

这太棒了,谢谢! – 2017-07-11 22:30:11

0

对于我使用的版本52.0.2743的--kiosk标签没有工作,但 - -app =“http://www.example.com”做了我想要的。 (残疾的铬键盘快捷键,所以我可以使用shellinabox +纳米没有问题。)

也适用于铬金丝雀(其中 - - kosos标签也没有工作)。

其他可能有用的链接: Chrome的支持,如何让信息亭应用:https://support.google.com/chrome/a/answer/3316168?hl=en 亭应用为Chrome:https://chrome.google.com/webstore/detail/kiosk/afhcomalholahplbjhnmahkoekoijban?hl=en

3

我知道这个问题是很老,但我发现,我的作品的解决方案(和可能也有很多其他人)。 如果您在浏览器中根本没有使用CTRLALT键,则可以在操作系统本身中禁用它们。

在Linux下,我使用xmodmap -pke来找出哪个键被映射到哪个代码。 知道的键码,我用:

xmodmap -e "keycode 37 = " 
xmodmap -e "keycode 105 = " 

禁用左,右CTRL(以防止类似CTRL +W¯¯CTRL +牛逼等),然后与:

xmodmap -e "keycode 133 = " 
xmodmap -e "keycode 134 = " 

左右两边个SUPER键(Windows键)(防止打开开始菜单,这种华而不实的东西)

最后用xmodmap -e "keycode 105 = "我禁用了ALT关键(防止ALT + F4,等等)

和可选,我们可以禁用F1太多,让Chrome的支持页面打不开,有:xmodmap -e "keycode 67 = "

最后,让铬或镀铬锁定休息下来我们使用Kiosk模式:

chromium-browser --kiosk http://example.com/ 

google-chrome --kiosk http://example.com/ 

,然后右键单击在kiosk模式已被禁用,所以我们做的不是n在那里改变任何事情。

完成所有这些工作后,最终用户只能在预定义的网页中使用鼠标进行导航(当然也可以使用通往其他内容的链接),并使用键盘上的普通字符编写东西,但仅限于此。 重新加载可能仍然是可能的(F5),但即使可以禁用:xmodmap -e "keycode 71 = "

注意:请执行xmodmap -pke第一时间发现,如果你的键盘或操作系统有相同的键盘映射,或可以禁用其他正常的钥匙不知道。

注意2:请注意,如果你做了everyhing上面再启动Chrome和Chromium Kiosk模式,你不能出去了!只有通过物理按下电源按钮或通过SSH或Telnet终止应用程序才能让您恢复正常操作。

要使这些更改永久,阅读本指南的结尾: https://stackoverflow.com/a/11219056/3525780

编辑:对于那些谁拥有禁用F1F5等键的问题,使用以下内容作为解决方法:

xmodmap -e "keycode 67 = Escape" 

(不知那些“F键”需要被分配到一个已经存在的和分配密钥)

+0

>>'可选地,我们也可以禁用F1,以便Chrome支持页面不会打开,并且:xmodmap -e“keycode 67 =”' 尝试过并仍然有F1工作。 也尝试这些: 'xmodmap的-e “键码67 = NoSymbol”' 'xmodmap的-e “键码67 = 0x00000”' 'xmodmap的-e “键码67 = F2”' – Drey 2017-06-30 08:12:50

+1

@Drey我刚刚发现F1实际上不受xmodmap的影响,它仍然打开帮助页面...我正在寻找一个解决方案... – Fusseldieb 2017-06-30 13:04:43

+0

@Drey Solved。无论出于何种原因,您必须将键码67设置为*现有*键。我将它设置为ESC,如下所示:'xmodmap -e“keycode 67 = Escape”'。现在帮助消失了。 – Fusseldieb 2017-06-30 13:24:57