如何检查对话框Extended Div是否处于最小化位置

时间:2013-03-07 09:36:39

标签: javascript jquery jquery-ui

我有一个像这样的扩展div:

var $chatTemplateDiv = $('#ChatTemplate');
 var dialogExtendOptions = {
     "close": true,
     "maximize": false,
     "minimize": true,
     "dblclick": 'minimize',
     "titlebar": 'transparent',
     "restore": function (event, ui) {

     }
 };
 $chatTemplateDiv.dialog({
         title: ClientName,
         width: 360,
         height: 320,
         modal: false,
         resizable: false,
         maxHeight: 500,
         focus: function (event, ui) {
             $("#ToClientID").val(ToClient); 

         },
         open: function (event, ui) {

             $(this).animate({
                 scrollTop: $(this).scrollTop() + 10000000
             });

         }
     }).dialogExtend(dialogExtendOptions);

我怎么知道用户是否最小化了div?

1 个答案:

答案 0 :(得分:1)

如果您使用此插件https://code.google.com/p/jquery-dialogextend/,那么您可以这样做:

它包含两个事件beforeMinimize& minimize所以试试其中一个适合你的人。

 var dialogExtendOptions = {
     "close": true,
     "maximize": false,
     "minimize": true,
     "dblclick": 'minimize',
     "titlebar": 'transparent',
     "restore": function (event, ui) {

     },"events" : {
          "beforeMinimize" : function(evt, dlg){ alert(evt.type+"."+evt.handleObj.namespace); },
          "minimize" : function(evt, dlg){ alert(evt.type+"."+evt.handleObj.namespace); }
        }
 };

然后在你的问题中写上你写的其余代码。

修改

好的,因为你说要识别它是否被最小化。所以你可以这样做:

正如官方文件中所述:

switch ( $("#my-dialog").dialogExtend("state") ) {
  case "maximized":
    alert("The dialog is maximized");
    break;
  case "minimized":
    alert("The dialog is minimized");
    break;
  case "collapsed":
    alert("The dialog is collapsed");
    break;
  default:
    alert("The dialog is normal");
}

只要您想识别它是否被最小化,就使用它。

因此,如果您想在点击按钮时识别对话框是否最小化,那么您可以这样做:

$("#yourbutton").on('click',function(){
switch ( $('#ChatTemplate').dialogExtend("state") ) {
  case "minimized":
    alert("The dialog is minimized");
    }

});