2011-12-26 76 views
2

我一直在嘗試使用jQuery UI對話框。但我無法設置最小寬度和高度。 這裏是我的代碼無法設置jquery ui對話框最小寬度

var options={ 
       modal: true, 
       title:headertext, 
       minHeight:125, 
       minWidth:520, 
       maxWidth:1000, 
       maxHeight:1000, 
       dialogClass:"sfFormwrapper"}; 
      $('#'+popupid).dialog(options); 

但在瀏覽器,它呈現爲

height:auto ; width:520px

謝謝!

回答

6

最小/最大值只是控制最小值,您可以調整它的大小。如果您想將其設置爲某個高度,請使用高度/寬度。也可能想要將方法名稱'選項'傳遞給您的dialog()調用。

var options={ 
      modal: true, 
      title:headertext, 
      height: 500, 
      minHeight:125, 
      minWidth:520, 
      maxWidth:1000, 
      maxHeight:1000, 
      dialogClass:"sfFormwrapper"}; 
$('#'+popupid).dialog('option', options); 
12

你似乎是的印象是,在minWidthminHeightmaxWidthmaxHeight選項分別直接映射到min-widthmin-heightmax-widthmax-height CSS樣式規則。事實並非如此。

您問題中的樣式規則來自小部件元素本身(樹的根,暴露類ui-dialog類)。請注意,minWidth選項轉換爲width規則,該規則實際上是動態的:它由小部件管理,並隨着調整對話框大小而變化。

以同樣的方式,由對話窗口小部件增強的原始元素具有動態應用的width,heightmin-height規則。

正如您在this fiddle中看到的那樣,如果您使用瀏覽器開發工具的佈局視圖,則小部件會確保對話框(包含邊框和標題欄)的總大小保持在您指定的範圍內。

+2

如果我沒有弄錯,minWidth/minHeight/etc限制[**用戶調整大小**](http://api.jqueryui.com/dialog/#option-minWidth),根據內容不增長/縮小。每個站點:* MinWidth:對話框可以調整的最小寬度,以像素爲單位。*我的理解是否正確? – crashwap 2014-03-31 02:10:38

1

使用這樣的:

$('#'+popupid).dialog({ width:400, height:300, maxWidth: 800, maxHeight: 500, minWidth: 300, minHeight: 200 });

1

答案很簡單

$("#info").dialog({ 
    draggable: false, 
    autoOpen: false, 
    resizable: false, 
    width: '40%', 
    height: 450, 
    modal: true 
}); 

$(".info").click(function(event) { 
    $("#info").dialog("open"); 
    $(".ui-dialog").css({'min-width': '350px'}); 
    event.preventDefault(); 
}); 
0

只需使用CSS!

.ui-widget-content { 
min-width: 360px; 
} 

或者

最小寬度:25%;