Вот, пожалуйста. Теперь при клике на гифку при первом открывается модал1 , при втором модал2.Но проблема в том что у меня модальный экран требует, чтобы пользователи закрывали окно, прежде чем они снова смогут использовать основную навигацию сайта, для того чтобы нажать на гиф второй раз и получается закрываться оно должно без обновления страницы, чтобы завершить цикл и нажать второй раз на гиф. А оно не закрывается
Поставить в href хэш или ? дает что страница просто перезагружается и цикл запускается по новой не доходя до второго клика.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style type="text/css">
.modal1,
.modal2 {
display: none;
}
</style>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<script>
$(function() {
const $elem = $(".gifka"),
modal = $('.modal1, .modal2').toArray();
$elem.on('click', () => {
let [a, b] = modal;
$(a).fadeIn();
$(b).fadeOut();
modal.reverse()
});
});
</script>
</head>
<body>
<img src="https://javascript.ru/forum/images/smilies/smile.gif" alt="" class="gifka">
<div class="modal1">
<div class="modal__body">
<div class="modal__content">
<h2 class="modal__title">Title</h2>
<a class="modal__close" href="">X</a>
</div>
</div>
</div>
<div class="modal2">
<div class="modal__body">
<div class="modal__content">
<h2 class="modal__title">Title2</h2>
<a class="modal__close" href="?">X</a>
</div>
</div>
</div>
</body>
</html>