Определите подходящую родительскую высоту Div для использования с аккордеоном jQuery - PullRequest
0 голосов
/ 19 апреля 2011

Я создаю релейную систему, которая использует функцию jQuery Accordion для рендеринга разделов данных.Проблема, с которой я сталкиваюсь, заключается в том, что когда я щелкаю заголовок, чтобы область содержимого раскрывалась / разворачивалась, он изменяет размер страницы (и, следовательно, полосу прокрутки вправо).

Я бы хотел как-нибудьпрограммно определить высоту контента, который я генерирую.Данные в области содержимого аккордеона извлекаются из базы данных, и нет никакого способа точно определить, насколько большим они будут заранее.

По сути, я пытаюсь сделать это для родителя <div>быть установленным на определенную высоту, предоставляя достаточно места для расширения аккордеонов без изменения размера страницы.

Есть идеи?Я был бы очень любезен!

Редактировать


На самом деле, если подумать, размер данных, содержащихся в области содержимого, ограничен максимум 10 строками.То, что делает размер непредсказуемым, является количеством областей контента, которые будут появляться.Есть ли способ вернуть количество результатов SQL, соответствующих моему запросу, а затем установить родительскую оболочку / инкапсуляцию на высоту, соответствующую этому числу?

Ответы [ 2 ]

0 голосов
/ 19 апреля 2011

COUNT(*)

Возвращает число из SQL в зависимости от того, что вы его спросите.Например,

$q = query('SELECT COUNT(*) AS `numrows` FROM **DESIRED TABLE** WHERE ** CRITERIA IS WHAT YOU WANT**');

echo json_encode($q);

Javascript выполняет ajax-вызов вышеуказанного запроса, получает номер и устанавливает его в JS-переменнуюТеперь у вас есть переменная js с количеством строк в ней

0 голосов
/ 19 апреля 2011

В jquery:

var parentheight = $('.div').height(); // Height of the div.

И тогда вы можете использовать то, что вы хотите.

Будет ли это работать для вас?

...