【问题标题】:jquery 1.4.2 - jquery UI dialog, close when outside click (not modal)jquery 1.4.2 - jquery UI 对话框,在外部单击时关闭(非模态)
【发布时间】:2011-11-28 20:48:21
【问题描述】:

使用 UI 对话框。 jQuery 1.4.2

我有我的代码在外部单击时关闭对话框。 这对我不起作用。但是,如果我在本地开发中升级版本,它可以正常工作。 问题是,我无法为网站的这一部分升级 jquery 版本。

关于如何实现在非模态对话框外点击关闭的想法?

// Close Pop-in If the user clicks anywhere else on the page
             jQuery('body')
              .bind(
               'click',
               function(e){
            if(
             jQuery('.detailsPopup').dialog('isOpen')
             && !jQuery(e.target).is('.ui-dialog, a')
             && !jQuery(e.target).closest('.ui-dialog').length
            ){
             jQuery('.detailsPopup').dialog('close');
            }
               }
              );

【问题讨论】:

  • 您使用的是什么版本的 jQuery UI?您应该使用适用于古老 jQuery 的那个(不知道为什么您认为无法升级)。

标签: jquery jquery-ui dialog modal-dialog


【解决方案1】:

你可以试试这个:

http://jsfiddle.net/GKfZM/117/

它正在运行 1.4.4,但请试一试。适用于autoOpen true 或 false。

$('#open').click(function() {
    $('#your-dialog-id').dialog('open');
    closedialog = 0;
});

var closedialog;

function overlayclickclose() {
    if (closedialog) {
        $('#your-dialog-id').dialog('close');
    }
    //set to one because click on dialog (focus) box sets to zero 
    closedialog = 1;
}

$('#your-dialog-id').dialog({
    autoOpen: false,
    open: function() {
        closedialog = 1;
        $(document).bind('click', overlayclickclose);
    },
    focus: function() {
        closedialog = 0;
    },
    close: function() {
        $(document).unbind('click');
    },
    buttons: {
        Submit: function() {
        $(this).dialog('close');
    }
  }
});

【讨论】:

    【解决方案2】:
    $(document).click(function(e) {
        if (e.target.classList.contains('ui-widget-overlay'))
         {
            $( "#yourDialogId" ).dialog("close");
         }
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-03
      • 2012-01-08
      • 1970-01-01
      • 1970-01-01
      • 2011-08-18
      • 1970-01-01
      • 2016-01-20
      • 2011-12-16
      相关资源
      最近更新 更多