У меня есть немного немного JS, я сделал, простые вещи, которые я знаю, но задаюсь вопросом, каким будет лучший способ, если бы я расширил один и щелкнул на другом, чтобы открыть все открытые, которые закрылись бы до того, как откроется другой.
JS
/* Expand course details */
$('.expandCourse').on('click',function() {
var courseID = $(this).attr('ID');
console.log(courseID);
$("."+courseID).slideToggle();
return false;
});
Пример HTML:
<a href="#" id="link_1" class"expandCourse">test link 1</a>
<div class="link_1" style="display:none;>content here</div>
<a href="#" id="link_2" class"expandCourse">test link 2</a>
<div class="link_2" style="display:none;>content here</div>
<a href="#" id="link_3" class"expandCourse">test link 3</a>
<div class="link_3" style="display:none;>content here</div>
Заранее спасибо!
Вы можете так использовать
$('.expandCourse').on('click',function() {
$("[class^=link]").not($(this).next()).slideUp();
$(this).next().slideToggle();
});
В каждом клике он скрывает все div с именем class начинается со link
кроме div, связанного с текущим привязкой.
редактировать
$('.expandCourse').on('click',function() {
$("[class^=link]").not($("."+this.id)).slideUp();
$("."+this.id).slideToggle();
});