2013-04-02 15 views

risposta

13

Provare il collegamento this per impostare l'altezza in percentuale.

$(document).ready(function() { 
$('#testColorBox').click(function() { 
    var wWidth = $(window).width(); 
    var dWidth = wWidth * 0.8; 
    var wHeight = $(window).height(); 
    var dHeight = wHeight * 0.8; 
    var $link = $(this); 
    var $dialog = $('<div></div>') 
     .load('test.html') 
     .dialog({ 
      autoOpen: false, 
      modal: true, 
      title: $link.attr('title'), 
      overlay: { opacity: 0.1, background: "black" }, 
      width: dWidth, 
      height: dHeight, 
      draggable: false, 
          resizable: false 
     }); 
    $dialog.dialog('open'); 
    return false; 
    }); 
}); 
+3

Una versione breve di questo è: '$ ("# selettore") finestra di dialogo ({width:. $ (Window) .width() * 0.8, altezza: $ (window) .height() * 0.8 }); ' – degenerate

6

jQuery UI consente solo di esprimere l'altezza massima in pixel. Dovrai eseguire il calcolo su una percentuale del tuo codice.

$(document).ready(function(){ 
    $("#dialog-modal").html($("#temp").html()); 
    $("div#dialog-modal").dialog({ 
     height: "auto", 
    maxHeight: $("div#dialog-modal").outerHeight() * .2, 
     resizable: false, 
     width: "70%", 
     modal: true, 
     title: "Hello" 
    }); 
}); 
2

È possibile farlo controllando l'altezza della finestra o l'altezza di alcuni div.

Ecco un esempio: http://jsbin.com/otiley/4/edit

Oppure:

$(document).ready(function(){ 
    var height = $(window).height(); 
    height = height*0.20; 
    $("#dialog-modal").html($("#temp").html()); 
    $("div#dialog-modal").dialog({ 
     height: "auto", 
     maxHeight: height, 
     resizable: false, 
     width: "70%", 
     modal: true, 
     title: "Hello" 
    }); 
}); 

Si può prendere l'altezza di qualsiasi div e calcolare qualsiasi percentuale desiderata.