【问题标题】:How to close collapse when I click outside?单击外部时如何关闭折叠?
【发布时间】:2020-02-29 15:30:16
【问题描述】:

我有一个带有 Bootstrap 3 的主题,我创建了一个代码来在我点击外部时关闭菜单。

在这个菜单中,我有一个ui-autocomplete 字段。问题是当我在ui-autocomplete 列表中选择一个结果时,菜单会关闭。我希望它保持打开状态。

(function ($, Drupal) {

  'use strict';

  $(document).click(function (event) {
    if (!$(event.target).is('.navbar-collapse *')) {
      $('.navbar-collapse').collapse('hide');
    }
  });

})(jQuery, Drupal);

【问题讨论】:

    标签: javascript jquery twitter-bootstrap twitter-bootstrap-3 collapse


    【解决方案1】:

    click 上也添加.ui-autocomplete 类以避免collapse

    (function($, Drupal) {
    
      'use strict';
    
      $(document).click(function(event) {
        if (!$(event.target).is('.navbar-collapse *, .ui-autocomplete, .ui-autocomplete *')) {
          $('.navbar-collapse').collapse('hide');
        }
      });
    
    })(jQuery, Drupal);
    

    编辑:基于 cmets 编辑的答案。

    【讨论】:

    • 谢谢,但您的代码不起作用,因为“ui-autocomplete”在崩溃之外。它会使用我的代码并添加一个异常。
    • @Mathieu 没问题,只需将ui-autocomplete 类添加到您的选择器即可。就是这样
    • @Mathieu 我应该输入地址吗?当我点击并输入它时没有发生任何事情
    • @Predam 您必须在字段中输入城市才能显示列表
    • 输入 PARIS 并等待 5 秒钟,列表应该会出现
    猜你喜欢
    • 1970-01-01
    • 2014-07-15
    • 2016-02-22
    • 2016-11-06
    • 2014-02-14
    • 2015-11-18
    • 1970-01-01
    • 2017-05-20
    • 1970-01-01
    相关资源
    最近更新 更多