在javascript / jQuery中检测ctrl + tab键

时间:2012-11-03 10:58:39

标签: javascript jquery onkeypress

我有一个要求,我必须限制用户查看我的网页。在完成页面中的任务之前,不应允许用户按 Ctrl + Tab

有没有办法在javascript / jQuery中检测 Ctrl + Tab 按键?

3 个答案:

答案 0 :(得分:6)

此代码将检测CTRL + Tab:

$(document).keydown(function(e) {
    if (e.ctrlKey && e.which == 9) {
        alert("CTRL + TAB Pressed")
    }
})

但是请注意,CTRL + Tab功能是由浏览器控制的,你无法阻止它,因为这个小提琴会证明你是否有多个标签打开:

Example fiddle

答案 1 :(得分:1)

不,你不能。也就是说,您可以检测击键,但不会阻止切换选项卡的行为。幸运的是,因为这样做的网站会使浏览变得非常痛苦。

它会破坏网络浏览器的目的。如果您需要这样的限制,请不要构建网站,而是构建桌面应用程序。但是,如果您构建一个浏览器应用程序,使其足够智能以保存其状态,那么用户可以返回任务并在以后完成它,如果他们先切换到另一个选项卡。

答案 2 :(得分:0)

检查处理程序中事件的ctrlKey属性。

$(document).on('keypress','*',function(e){alert(e.ctrlKey);})

http://jsfiddle.net/kDdzj/

你可以检测到它,但你无法阻止它。