Наверное, это простой вопрос для большинства из вас, но я только учусь, так что вам придется меня простить ...
Я пишу код, чтобы на экране отображалось несколько различных элементов в последовательном порядке событий. По сути, я кладу один элемент поверх следующего. При начальной загрузке страницы пользователь увидит только element_0_5. При щелчке по этому элементу отобразится следующий и т. д.
Где я застрял, я не могу понять, как заставить код вернуться к отображению только element_0_5 и повторно скрыть все остальное. В основном это делается так, что, когда я нажимаю element_0_0 второй раз, все элементы отменяют все предыдущие действия и возвращаются в исходное состояние отображения element_0_5
Пожалуйста, помогите, спасибо !!
$('#element_0_3').on('click', function(event) {
$('#element_0_4').removeClass('animated fadeInDown infinite');
setTimeout(function() {
$('#element_0_4').addClass('animated fadeInDown');
}, 10);
});
$('#element_0_3').on('click', function(event) {
$('#element_0_6').removeClass('animated rotateIn infinite');
setTimeout(function() {
$('#element_0_6').addClass('animated rotateIn');
}, 10);
});
$('#element_0_3').on('click', function(event) {
$('#element_0_7').removeClass('animated fadeInDown infinite');
setTimeout(function() {
$('#element_0_7').addClass('animated fadeInDown');
}, 10);
});
$('#element_0_5').on('click', function(event) {
$('#element_0_0').removeClass('animated slideInUp infinite');
setTimeout(function() {
$('#element_0_0').addClass('animated slideInUp');
}, 10);
});
$('#element_0_0').on('click', function(event) {
$('#element_0_1').removeClass('animated fadeInDown infinite');
setTimeout(function() {
$('#element_0_1').addClass('animated fadeInDown');
}, 10);
});
$('#element_0_0').on('click', function(event) {
$('#element_0_2').removeClass('animated rotateIn infinite');
setTimeout(function() {
$('#element_0_2').addClass('animated rotateIn');
}, 10);
});
$('#element_0_0').on('click', function(event) {
$('#element_0_3').removeClass('animated fadeInDown infinite');
setTimeout(function() {
$('#element_0_3').addClass('animated fadeInDown');
}, 10);
});
$('#element_0_5').on('click', function(event) {
$('#element_0_0').toggle();
});
$('#element_0_0').on('click', function(event) {
$('#element_0_1').toggle();
});
$('#element_0_0').on('click', function(event) {
$('#element_0_2').toggle();
});
$('#element_0_0').on('click', function(event) {
$('#element_0_3').toggle();
});
$('#element_0_3').on('click', function(event) {
$('#element_0_4').toggle();
});
$('#element_0_3').on('click', function(event) {
$('#element_0_6').toggle();
});
$('#element_0_3').on('click', function(event) {
$('#element_0_7').toggle();
});


![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вы можете добавить контрольную переменную, примерно так
var click = 0;
$('#element_0_0').on('click', function(event) {
if (click == 0){
$('#element_0_1').removeClass('animated fadeInDown infinite');
setTimeout(function() {
$('#element_0_1').addClass('animated fadeInDown');
}, 10);
click = 1;
}else{
$('#element_0_1').addClass('animated fadeInDown');
setTimeout(function() {
$('#element_0_1').removeClass('animated fadeInDown infinite')
}, 10);
click = 0;
}
});
Лучше (IMHO) использовать логическое значение true / false, а не целое число 1/0.