Javascript 在JQuery中更改选项卡时在Ctrl上注册keyup

Javascript 在JQuery中更改选项卡时在Ctrl上注册keyup,javascript,jquery,javascript-events,wysiwyg,Javascript,Jquery,Javascript Events,Wysiwyg,我已经创建了一个wysiwyg HTML编辑器。当用户按住Ctrl键时,它会将变量ctrlPressed设置为true。当使用Ctrl-keycode触发向上键事件时,ctrlPressed设置为false 但是,当用户按Ctrl+PgUp更改选项卡时,ctrlPressed无法再次设置为false,因为当用户释放控制键时,它会在新选项卡中触发keyup事件,因此当用户返回到包含我的网站的原始选项卡时,我的网站仍然认为按下了Ctrl。这意味着当他们尝试键入i时,它会将文本设置为斜体,当用户按下“

我已经创建了一个wysiwyg HTML编辑器。当用户按住Ctrl键时,它会将变量
ctrlPressed
设置为true。当使用Ctrl-keycode触发向上键事件时,
ctrlPressed
设置为false

但是,当用户按Ctrl+PgUp更改选项卡时,
ctrlPressed
无法再次设置为false,因为当用户释放控制键时,它会在新选项卡中触发keyup事件,因此当用户返回到包含我的网站的原始选项卡时,我的网站仍然认为按下了Ctrl。这意味着当他们尝试键入i时,它会将文本设置为斜体,当用户按下“s”时,内容会保存,直到他们再次按下并释放Ctrl键

这个问题有解决办法吗


谢谢大家!

在检测到加载新选项卡时将ctrlPressed设置为false?

为了在用户离开站点时将ctrlPressed变量设置为false,可以将
blur()
事件附加到$(窗口)元素,如下所示:

$(window).blur(function(){
    ctrlPressed = false;
});

我猜你的意思是当另一个选项卡被选中时?但我们如何做到这一点呢。我一直在搜索这个东西,但出于某种原因,我只找到了jQueryUI选项卡切换。您需要更详细地了解您所拥有的。选项卡是如何创建的?您使用过哪些插件(如果有的话)?您有可以显示的示例代码吗?可能会将
blur
事件附加到
$(窗口)
?类似于
$(window.blur(function(){ctrlPressed=false})聪明,斯库玛。你能把它变成一个答案让我接受吗?