MouseTrap在modal popUp中失去焦点

时间:2014-01-13 18:16:36

标签: javascript jquery mousetrap

我有一个使用mousetrap API进行键盘快捷键的Web应用程序。 我在以下情况中遇到困难: 我在一个模态(jQueryUI)和这个模态有第二个模态警报。当警报关闭时,焦点不会返回主模式,使快捷方式不起作用,您需要在模式div中单击鼠标才能使快捷方式再次工作。 我的问题是:有没有办法让捕鼠器忽略对div的关注并假设一个全局行为? 如果没有,有什么方法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:2)

解决这个问题的一种方法是,当第二个模态关闭时,强制鼠标点击当前模态使用javascript。
你怎么能不知道当前模态是什么,使用位置(屏幕中心)来找到活动字段。
像这样的东西

function ClickCenterScreen() {
    x = $(document).width() / 2;
    y = $(document).height() / 2;
    element = $(document.elementFromPoint(x, y));           
    element = $(element).contents().find("form").find("input[type=text]").first();

    // you need to set focus on element first.
    $(element).focus();
    $(element).click();
}