jQuery UI对话框手动关闭

jQuery UI对话框手动关闭,jquery,popup,Jquery,Popup,我正在使用jQueryUI对话框 当我点击一个按钮时,对话框应该会打开。当对话框打开时,全身应处于禁用状态。比如我们使用弹出窗口的确切时间。因此,我使用了下面的代码 这里是链接 $(文档).ready(函数(e){ $(“#弹出窗口”)。单击(函数(){ $(“#dialog”).dialog(); $(“.parentDisable”).show(); }); $(“.parentDisable”)。单击(函数(){ $(“#dialog”).dialog('close'); $(“.par

我正在使用jQueryUI对话框

当我点击一个按钮时,对话框应该会打开。当对话框打开时,全身应处于禁用状态。比如我们使用弹出窗口的确切时间。因此,我使用了下面的代码

这里是链接


$(文档).ready(函数(e){
$(“#弹出窗口”)。单击(函数(){
$(“#dialog”).dialog();
$(“.parentDisable”).show();
});
$(“.parentDisable”)。单击(函数(){
$(“#dialog”).dialog('close');
$(“.parentDisable”).fadeOut(1000);
});
$(“.ui按钮图标主”)。单击(函数(){
$(“#dialog”).dialog('close');
$(“.parentDisable”).fadeOut(1000);
});
});
.parentDisable{
位置:固定;
排名:0;
左:0;
背景:#000;
不透明度:0.8;
z指数:1;
身高:100%;
宽度:100%;}
这是用于显示信息的默认对话框。可以使用“x”图标移动、调整和关闭对话框窗口

弹出
这是我的问题。当我点击按钮时,弹出窗口打开,整个身体被黑色背景覆盖

现在,用户应该能够在两种类型中关闭

  • 单击弹出窗口中的关闭符号
  • 点击弹出窗口的外侧区域(黑色背景)
  • 上面提到的第二种方法很好用。但在第一种方法中,当我点击关闭符号时,只有弹出窗口接近,黑色背景保持不变

    我试过一些方法。但它没有起作用。
    请给出任何建议。

    您可以订阅该对话框的活动并隐藏您的背景:

      $("#dialog").dialog({
                buttons: { "Ok": function() {  $(this).dialog("close");}}
                });
    
    $( "#dialog" ).on( "dialogclose", function( event, ui ) { 
        $( ".parentDisable" ).fadeOut(1000); 
    });
    

    更新

    对话框组件中已存在此类功能:

      $( "#dialog" ).dialog(
        { 
           modal: true 
      });
    

    注册带有关闭事件的对话框

    $("#dialog").dialog({
             autoOpen: false,
             close: function (event, ui) {
                 $(".parentDisable").fadeOut(1000);
             }
         });
    
    用Open命令打开它

     $("#dialog").dialog('open');
    

    签出更新的

    通过以下方式注册您的点击事件:

     $(document).on('click','.ui-button-icon-primary',function(){
            $( "#dialog" ).dialog('close');
            $( ".parentDisable" ).fadeOut(1000);
        });
    

    正在工作

    很好。谢谢。:-)在
    $.dialog()
    中没有
    覆盖
    选项。现在它看起来像被移除了。谢谢你的更新。我会更新代码。@Samich是的。你的答案与我的问题无关。但根据你的回答,我得到了一些信息。坦库。!
     $(document).on('click','.ui-button-icon-primary',function(){
            $( "#dialog" ).dialog('close');
            $( ".parentDisable" ).fadeOut(1000);
        });