Pregunta

Tengo un cuadro de diálogo jQuery que las cargas de su contenido a través de Ajax después de su abierto.

Ver este jsFiddle (contenido no se carga a través ajax pero añadido después de abierto, que es suficiente para demostrar mi problema).

HTML:

<div id="test">test</div>

JS:

$("#test").dialog({
    minHeight:100,
    maxHeight:200,
    width:300,
    open: function(){
        $(this).html("test<br /><br />test<br />" +
                     "<br />test<br /><br />test" +
                     "<br /><br />test<br /><br />" +
                     "test<br /><br />test<br />" +
                     "<br />test<br /><br />test");
    }
});

Cuando se abre no se mantiene fiel a su maxHeight hasta que cambia el tamaño de la ventana de diálogo. ¿Hay algún tipo de método resize puedo llamar después de añadir contenido al diálogo?

Yo prefiero no tener que calcular manualmente si es necesario un cambio de tamaño y qué tan alto desde su más o menos ya está integrado en la interfaz de usuario plug-in.

¿Fue útil?

Solución 2

jsFiddle ejemplo.

No es exactamente la solución elegante que yo esperaba, pero hasta ahora parece que funciona.

Si alguien tiene una mejor solución que estaremos encantados de escucharla.

Otros consejos

Ponga el código html en un div real en el webapge, a continuación, utilizar el diálogo en ese div. O para el cambio de altura (y otras opciones) después de inicio de ... jQuery docs :

//getter
var width = $( ".selector" ).dialog( "option", "height" );
//setter
$( ".selector" ).dialog( "option", "height", 460 );

Configuración de la maxHeight en la función abierta parece hacer el truco:

$("#test").dialog({
    minHeight:100,
    width:300,
    open: function(){
        $(this).html("test<br /><br />test<br /><br />test<br /><br />test<br /><br />test<br /><br />test<br /><br />test<br /><br />test<br /><br />test");
        $(this).parent().css("height", "auto");
        $(this).css("maxHeight", 200);
    }
});

EDIT: Aparece cuando el div 'prueba' se utiliza como un cuadro de diálogo que se convierte anidado dentro del div de diálogo junto con un div de cabecera. Como resultado tanto de la prueba y su div que contiene div necesidad de tener sus alturas establecen con el div que contiene teniendo en cuenta la altura de la div cabecera de diálogo. Ajuste de la altura de autos debe hacerse cargo de esto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top