JQUERY, div con una altura fija (con una barra de desplazamiento) cómo animar hasta que crece a ya no necesita una barra de desplazamiento?
-
05-10-2019 - |
Pregunta
JQUERY, div con una altura fija (con una barra de desplazamiento) cómo animar hasta que crece a ya no necesita una barra de desplazamiento?
Tengo un div en una página con una altura de CSS:. 200px entorno, lo que hace que el DIV tiene una barra de desplazamiento vertical, que permite al usuario desplazarse a través de un montón de texto
Me gustaría animar el DIV para expandirse en altura hasta que se muestre todo el contenido del div, lo que significa no más barra de desplazamiento
He intentado lo siguiente:
$("#view-container").animate({"height": "auto"}, "slow");
pero eso no funcionó, mientras que esto hace:
$("#view-container").animate({"height": "1000px"}, "slow");
problema con esto es el tamaño del texto en el DIV es variable. Ideas?
Gracias
Solución
Lo que puede hacer:
Configurar la altura de auto
, a continuación, registrar la offsetHeight
. Cambie de nuevo a la altura de lo que era de inmediato -. Los usuarios no podrán ver el cambio en absoluto ya que los navegadores son de un solo subproceso
A continuación, utilice jQuery (o no) para animar a esa altura grabado.
Ejemplo:
var vc = document.getElementById('view-container');
var vcold = vc.style.height;
vc.style.height = 'auto';
var vcheight = vc.offsetHeight;
vc.style.height = vcold;
$("#view-container").animate({"height": vcheight + "px"}, "slow");