2012-06-27 16 views
26

Tengo un cuadro de diálogo que se llena con una llamada ajax. Quiero limitar la max-height de de diálogo y también permitir que sea capaz de desplazamiento si se supera este max-height. El código a continuación hace exactamente lo que quiero.jQuery UI diálogo de posicionamiento: ajuste la posición superior por 20px -

El problema es que no puedo mover el parte superior del diálogo de la posición superior. Puedo moverlo a izquierda y derecha. No puedo usar center ya sea que el cuadro de diálogo se muestre en una ventana grande con capacidad de desplazamiento. Si utilizo Firebug puedo ajustar la propiedad superior pero no puedo encontrar dónde se establece en cero.

$("#your-dialog-id").dialog({ 
    open: function(event, ui) { 
     $(this).css({'max-height': 500, 'overflow-y': 'auto'}); 
    }, 
    autoOpen:false, 
    modal: true, 
    resizable: false, 
    draggable: false, 
    width: '690', 
    closeOnEscape: true, 
    position: 'top' 
}); 

Quiero ajustar la posición y del cuadro de diálogo para que sea 20px desde la parte superior de la ventana. ¿Alguna idea de lo que puedo hacer?

+0

Pongo No entiendo lo que la pregunta real es – j08691

+0

@ j08691 Quiero ajustar el cuadro de diálogo y la posición para que dibuje 20px desde la parte superior de la ventana. Solo puedo cambiar la posición y a la parte superior, central o inferior. –

+0

¿No lograría eso un margen superior de 20px? – j08691

Respuesta

8

La forma más sencilla es:

$("#dialog").dialog({ position: { my: "center", at: "top" } }); 
+0

¡Bien! Consulte también https://jqueryui.com/position/ – KingRider

1

usando jQuery UI 1.11.4

 var Y = window.pageYOffset; 

     $("#dialogJQ").dialog({ 
      modal: true, 
      closeOnEscape: false,     
      width:'auto', 
      dialogClass: 'surveyDialog', 
      open: function(event, ui) { 
       $(this).parent().css({'top': Y+20}); 
      }, 
     }); 
Cuestiones relacionadas