Сворачивание/разворачивание множества блоков!
Здравствуйте форумчане! Пишу вам от безысходности. Изучаю JS неделю, нужно реализовать такую штуку! На странице есть очень много блоков(например бесконечное множество). Изначально они все свернуты. Например развернули мы первый блок, и при клике на второй блок первый должен свернуться а второй развернуться и так до бесконечности... Нашел хорошее решение на этом форуме:
// действия для первого блока $('#main_1').click(function () { // запускаем проверку на закритие панели if ($('#content_1').is(":hidden")) { // если панель закрыта открыаем ее и в цикле // проверяем открытие других панелей и если они // открыты, то закрываем их var i=1; while (i<=f) { $('#content_'+i).slideUp(1000); i++; } // открывается выбранна панель $('#content_1').slideDown(1000); } else { // если панель закрыта, то открываем ее $('#content_1').slideUp(1000); } }); Но оно мне не подходит, так как у меня не огрониченое количество блоков! Вот мой примерный html: <div id="box"> <div class="cl_1"></div> <div class="cl_1"></div> <div class="cl_1"></div> .......... </div> Помогите пожалуйста со скриптом! Буду безмерно благодарен... |
добавляйте открытому блоку класс актив и все. при клике проверяйте наличие класса актив, если есть - этот (этот - это тот по которому кликнули) блок актив или нет. Если этот - значит надо только закрыть блок. Если нет - актив скрываем, удаляем у него класс актив, этот раскрываем и добавляем класс актив.
Хотите подробней - сделайте тестовый пример (верстку нескольких блоков) |
Часовой пояс GMT +3, время: 15:48. |