JQuery, div con altezza fissa (con una barra di scorrimento) come animare fino a che non cresce fino non hanno più bisogno di una barra di scorrimento?

StackOverflow https://stackoverflow.com/questions/2937556

Domanda

jQuery, div con altezza fissa (con una barra di scorrimento) come animare fino a che non cresce fino non hanno più bisogno di una barra di scorrimento?

Ho un div in una pagina con un'altezza CSS:. 200px impostazione, il che rende il DIV hanno una barra di scorrimento verticale, che permette all'utente di scorrere attraverso un mazzo di testo

vorrei animare il DIV di espandersi in altezza fino a visualizzare tutti i contenuti nel div, il che significa non più barra di scorrimento

ho provato il seguente:

$("#view-container").animate({"height": "auto"}, "slow");

, ma che non ha funzionato, mentre questo fa:

$("#view-container").animate({"height": "1000px"}, "slow");

problema che è la dimensione del testo nel DIV è variabile. Idee?

Grazie

È stato utile?

Soluzione

Cosa si può fare:

Imposta l'altezza a auto, quindi registrare il offsetHeight. Modificare l'altezza dello schienale a quello che era subito -. Gli utenti non vedranno il cambiamento a tutti i browser sono a thread singolo

Quindi utilizzare jQuery (o meno) per animare a quell'altezza registrata.

Esempio:

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");
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top