Как узнать высоту div, прежде чем сделать его видимым? - PullRequest
0 голосов
/ 28 октября 2011

У меня есть скрытое открытое слайд-шоу / закрытие слайдов.

Этот эффект достигается путем анимации () высоты div.

Проблема в том, что div используется несколькими контентом (разными текстовыми абзацами), высота которого неизвестна.

Так как же узнать, какой будет высота div, когда я добавлю такой контент, чтобы я мог анимировать ('height': '- px') слайд-открытие div?

Ответы [ 2 ]

1 голос
/ 28 октября 2011

Одна хитрость, которая работала для меня раньше, - это установить непрозрачность элемента на что-то очень низкое, например 0.01.Это выполняет show для элемента, но если ваша непрозрачность достаточно низкая, это едва заметно на странице.

1 голос
/ 28 октября 2011

Просто используйте slideDown(), и вам не нужно будет вычислять высоту.

Единственный другой способ, которым вы могли бы сделать (но я не знаю ваших точных обстоятельств), это clone() элементи добавьте его к документу, установите height на auto, а затем получите height() этого.

var cloned = $('#some-element').clone();

cloned.css({ position: 'absolute', left: '-9999px', height: 'auto' });

var height = cloned.height();

cloned.remove();
...