@user_tm

Как скрыть содержимое таба при раскрытии другого таба?

Проблема такова: имеется спойлер и если кликнуть по табу раскрывается его содержимое, а если кликнуть по следующему табу раскрывается его содержимое, но не скрывается содержимое предыдущего таба. Как скрыть содержимое таба при раскрытии другого таба?
Вот html код
<a href="javscript://" class="splLink1">Спойлер: пример</a>
               <a href="javscript://" class="splLink2">Спойлер: пример</a>
               <a href="javscript://" class="splLink3">Спойлер: пример</a>
               <a href="javscript://" class="splLink4">Спойлер: пример</a>
               
               <div class="splCont1 splCont">
                 <div>1111Это примерный текст!</div>
               </div>
               <div class="splCont2 splCont">
                 <div>222Это примерный текст!</div>
               </div>
               <div class="splCont3 splCont">
                 <div>333Это примерный текст!</div>
               </div>
               <div class="splCont4 splCont">
                 <div>444Это примерный текст!</div>
               </div>

вот css код
/*СПОЙЛЕР*/
.splCont {
  display: none;
  padding: 3px 5px;
}

а вот JS код
$(document).ready(function(){
    $('.splLink1').click(function(){
      $(this).parent().children('div.splCont1').toggle('normal');

        return false;
    });
    $('.splLink2').click(function(){
      $(this).parent().children('div.splCont2').toggle('normal');
        return false;
    });
    $('.splLink3').click(function(){
      $(this).parent().children('div.splCont3').toggle('normal');
        return false;
    });
    $('.splLink4').click(function(){
      $(this).parent().children('div.splCont4').toggle('normal');
        return false;
    });
  });
  • Вопрос задан
  • 189 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
$('a').click(function() {
  const $tabs = $('.splCont');
  const $tab = $tabs.eq($(this).index()).toggle('normal');
  $tabs.not($tab).hide('normal');

  return false;
});
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Kozack
@Kozack Куратор тега JavaScript
Thinking about a11y
Что-то в таком роде:
$(this).parent().children('div.normal').toggle('normal');
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы