Сначала вы должны скрыть все .slidingDiv
, кроме первого, что вы можете использовать :gt()
для выполнения этой работы.Затем в обработчике события щелчка отобразите элемент, по которому щелкнули, и скрыте его братьев и сестер.
Ваш код должен быть изменен на
$(document).ready(function(){
$(".slidingDiv:gt(0)").hide();
$('.toggle-next-div').click(function(){
$(this).next().slideToggle();
$(this).next().siblings(".slidingDiv").slideUp();
});
});
Также вы можете упростить свой код и использовать цепочку jquery
$('.toggle-next-div').click(function(){
$(this).next().slideToggle().siblings(".slidingDiv").slideUp();
}).next(".slidingDiv:gt(0)").hide();
$('.toggle-next-div').click(function(){
$(this).next().slideToggle().siblings(".slidingDiv").slideUp();
}).next(".slidingDiv:gt(0)").hide();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button class="toggle-next-div">1</button>
<div class="slidingDiv">
<p>test1</p>
</div>
<button class="toggle-next-div">2</button>
<div class="slidingDiv">
<p>test2</p>
</div>
<button class="toggle-next-div">3</button>
<div class="slidingDiv">
<p>test3</p>
</div>
<button class="toggle-next-div">4</button>
<div class="slidingDiv">
<p>test4</p>
</div>
<button class="toggle-next-div">5</button>
<div class="slidingDiv">
<p>test5</p>
</div>