Подтвердить что ты не робот

Как определить, открывается ли открытие или закрытие бутстрапа?

Если у меня есть коллапс начальной загрузки, как я могу определить из события клика, когда сбой открывается или закрывается?

Вот мое событие click или, возможно, есть лучший способ использовать событие click?

$(document).on("click", "a.register-student-link", function() {
    // do some stuff to check if opening or closing
}

<div>
  <a [email protected] class="register-student-link" data-toggle="collapse" [email protected] aria-expanded="false" aria-controls="collapseExample">
                                                    Register Student
                                                </a>
</div>
4b9b3361

Ответ 1

Try:

$('#collapseDiv').on('shown.bs.collapse', function () {
   console.log("Opened")
});

$('#collapseDiv').on('hidden.bs.collapse', function () {
   console.log("Closed")
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet"/>
<div>
  <a [email protected] class="register-student-link" data-toggle="collapse" href="#collapseDiv" aria-expanded="false" aria-controls="collapseExample">Register Student</a>
</div>

<div class="collapse" id="collapseDiv">This is the collapsible content!</div>

Ответ 2

Bootstrap использует атрибут расширенной арии для отображения true или false, если регион скомпенсирован или нет.

var isExpanded = $(collapsableRegion).attr("aria-expanded");

Ответ 3

Мне нужен был способ определить, был ли элемент свернут до того, как он фактически рушится. Принимая во внимание, что прослушиватели событий запускаются только потом.

//Will return true if uncollapsed
$('#collapseDiv').hasClass('in');

//Will return true if in the process of collapsing
$('#collapseDiv').hasClass('collapsing');

//Will return true if collapsed
$('#collapseDiv').hasClass('collapse');