У меня проблема. Когда я скрываю все элементы с указанными c элементами только класса , за исключением , один из них скрыт. Я понятия не имею, почему это происходит.
, если я помещаю всплывающее окно где-то еще на странице, это работает. Я думаю, что это должно быть связано с css, но я не мог выяснить, какое свойство вызывает эту проблему.
Код
$('.scroll-nav-item').click(function() {
$(this).find('.popup').show();
});
$('.close-popup').click(function() {
$('.popup').hide();
});
:root{
--nav-height: 5rem;
--one-page-minus-nav-height: calc(100vh - var(--nav-height));
--scroll-nav-width: 80px;
--bg-light: #f8f9fa;
--bg-dark: #343a40;
--bg-dark-hover: #606b76;
}
#scroll_nav{
overflow: visible;
position: absolute;
left: 0;
top: calc(var(--nav-height) + 10rem);
width: var(--scroll-nav-width);
background-color: rgba(255, 255, 255, 0.5);
}
.scroll-nav-item{
display: flex;
overflow: visible;
justify-content: center;
align-items: center;
position: relative;
color: var(--bg-light);
--offset: 5px;
width: calc(var(--scroll-nav-width) - calc(var(--offset) / 2));
height: calc(var(--scroll-nav-width) - var(--offset));
margin: calc(var(--offset) / 2) calc(var(--offset) / 2) calc(var(--offset) / 2) 0;
border: 2px solid var(--bg-light);
background-color: var(--bg-dark);
cursor: pointer;
}
.popup{
position: absolute;
left: var(--scroll-nav-width);
cursor: auto;
background-color: white;
color: black;
}
.close-popup{
cursor: pointer;
}
.scroll-nav-item:hover{
background-color: var(--bg-dark-hover);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<body style="background-color: #A3A3A3">
<!-- Scroll Navigation -->
<div id="scroll_nav" class="d-none d-lg-block rounded-right" style="">
<div class="scroll-nav-item rounded">
open Popup
<div class="popup" style="display: none; min-width: 600px">
Popin around
<span class="close-popup"><b>close</b></span>
</div>
</div>
<div class="scroll-nav-item rounded">
2
</div>
<div class="scroll-nav-item rounded">
3
</div>
<div class="scroll-nav-item rounded">
open popup
<div id="pu1" class="popup" style="display:none; min-width: 600px">
popin around
<span class="close-popup"><b>close</b></span>
</div>
</div>
</div>
<body>
Как видите, если вы откроете оба всплывающих окна и попытаетесь закрыть одно из них, скрывается только другое всплывающее окно.
Можете ли вы помочь мне понять, что не так в моем коде?