Я разрабатываю Java-сервлет, который генерирует веб-страницы с div, содержащим результаты поиска в базе данных.
Высота этого div определяется в процентах (динамическая высота), а содержимое имеет кнопки отображения/скрытия (динамическое содержимое). Функции отображения и скрытия активируются атрибутом «onclick» элемента div.
Сначала я попытался использовать javascript с этой страницы (JScrollPaneDynamicHeight) для достижения динамической высоты и этого метода:
function refreshNav() {
var pane = $('YOUR SELECTOR');
var api = pane.data('jsp');
api.reinitialise();
}
...вызывается методами show/hide, чтобы вызвать метод reinitialise() и разрешить динамическое содержимое.
Это не работало правильно - при некоторых щелчках это срабатывало, при других щелчках панель прокрутки исчезала, а не появлялась снова, и наоборот.
Я также попытался сделать переменную «api» глобальной — та же проблема.
Последнее, что я пробовал, используя js, нашел здесь (только без добавления абзацев). Существует компромисс между быстрым откликом и активностью процессора, поэтому я добавил оператор if, который проверяет логическое значение, описывающее, изменилось ли содержимое или высота. Я использовал «console.log()», чтобы убедиться, что все работает как надо (изменение логического значения, выполнение оператора if и т. д.).
Это... но у меня все та же проблема с JScrollPane.
Однажды я где-то читал, что использование атрибута html "onclick" является плохой практикой - может ли это иметь значение?
Я был бы очень признателен за любую идею о том, что может пойти не так.
Ваше здоровье,
Скотт