У меня есть div#items и если он нажат затем div#choices slideDown (). Если по этому щелкают еще раз затем div#choices, должен slideUp (); Как я могу протестировать, если выбор снижается или уже? Я знаю, что мог сохранить в переменной и переключиться, это - значение каждый раз, когда div#items нажат, но что, если с #choices скатились другие средства?
Как указано в ответе Marimuthu, вы можете использовать slideToggle() для перемещения вверх, если div уже открыт, или вниз, если он закрыт.
Вы также можете проверить свойство display
, чтобы узнать, виден div в данный момент или нет. Из документации jQuery для slideUp().
Как только высота достигает 0, свойство display style устанавливается в none, чтобы убедиться, что элемент больше не влияет на макет страницы.
Зная это, вы можете проверить, установлено ли для него значение "none":
var $choices = $('div#choices');
if ($choices.css("display") == "none")
$choices.slideDown();
else
$choices.slideUp();