【问题标题】:jQuery detect if dropdown is expandedjQuery检测下拉菜单是否展开
【发布时间】:2014-04-26 07:22:28
【问题描述】:

我开发了jQuery 模态窗口,但我遇到了问题。当用户按下退出键时,我的系统会找到最顶层的窗口并关闭它们。 但是,例如,如果下拉菜单打开,我想先关闭下拉菜单,如果用户再次按 Escape 然后关闭模式(我不想移除焦点),则会出现问题。 输入autocomplete 是完全相同的问题。是否有某种方法可以查找按下的转义键是否具有某些“浏览器”功能?

感谢您的帮助,对不起我的英语不好, 彼得

【问题讨论】:

    标签: javascript jquery escaping keypress


    【解决方案1】:

    您不能使用常规的select 元素执行此操作,因为没有可靠的方法来检测 select 的下拉列表是否打开。但是,如果您使用 divs 等构建自定义选择,则可以检测 div 是否可见,如果可见,则可以防止模态在 beforeClose 方法中关闭。

    以下方法假定下拉列表包含在 div#select_elems

    beforeClose : function(e,u){
        if (e.which == 27 && $("#select_elems").is(':visible')) 
            return false;
    }
    

    FIDDLE

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-10
      • 1970-01-01
      • 1970-01-01
      • 2022-11-13
      • 2021-10-04
      • 1970-01-01
      • 1970-01-01
      • 2014-05-21
      相关资源
      最近更新 更多