Вам не нужен цикл для этого. Вам просто нужно вызвать slideUp()
на всех других .slider-div
элементах, прежде чем переключать тот, который связан с нажатым .money-transf
, например:
$(document).ready(function() {
var $slider = $('.slider-div');
var $transf = $('.money-transf');
$transf.click(function(e) {
var $target = $(this).next('.slider-div');
$slider.not($target).slideUp();
$target.slideToggle();
});
})
.slider-div {
display: none;
}
p {
margin: 0;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="money-transf">
<p>Element</p>
</div>
<div class="slider-div">
<p>Inform about element</p>
</div>
<div class="money-transf">
<p>Element2</p>
</div>
<div class="slider-div">
<p>Inform about element2</p>
</div>
Обратите внимание, что я изменил имена переменных $this
и $thiz
на что-то более значимое и менее простое для путаницы.