3

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

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

4

3 回答 3

7

此代码将检测 CTRL+Tab:

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

但是请注意,CTRL+Tab 功能由浏览器控制,您无法停止它,因为如果您打开了多个选项卡,此小提琴将演示:

示例小提琴

于 2012-11-03T11:04:06.340 回答
1

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

它会破坏网络浏览器的目的。如果你需要这样的限制,不要建立一个网站,而是一个桌面应用程序。相反,如果你构建一个浏览器应用程序,让它足够聪明以保存它的状态,这样如果用户先切换到不同的选项卡,他们可以稍后再返回任务并完成它。

于 2012-11-03T11:01:57.077 回答
0

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

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

http://jsfiddle.net/kDdzj/

你可以发现它,但你无法阻止它。

于 2012-11-03T11:02:05.817 回答