Jquery показать / спрятать вопросы с несколькими делениями

0

Теперь, если вы нажмете ссылку "Button1" или "Button2", она всегда показывает "Первый блок" с "Второй блок" или "Третий блок". Но когда вы нажимаете ссылки, второй или третий блок будет скрыт, но первый блок все еще отображается. Мне нужно удалить первый блок, если другие блоки скрыты щелчком. Первый блок должен отображаться только в том случае, если показан другой блок.

И ссылку "Показать все" следует изменить на "Скрыть все", если все блоки показаны и изменены на "Показать все", если не показаны ни один блок. Количество блоков будет больше трех.

JAVASCRIPT

 <script type="text/javascript">    
$(document).ready(function(){
var visibleText="Hide all";
var hiddenText="Show all";
$('a#showall').toggle( 
    function() { 
        $('#eventDescriptions>div').slideDown(); 
        $(this).html(visibleText);
    }, 
    function() { 
        $('#eventDescriptions>div').slideUp(); 
        $(this).html(hiddenText);
    } 
);
  $('#eventDescriptions>div').hide();
  $('#eventTitles a').click(function(){
    var target = $(this).attr("rel");
    $(target).slideToggle('slow');
    $('#showalways').show();
  });
});
</script>

HTML

a href="#" id="showall">Show all</a>

<ul id="eventTitles">

    <li><a href="#" id="button1" rel="#divblock1">Button1</a></li>
    <li><a href="#" id="button2" rel="#divblock2">Button2</a></li>
</ul>
<div id="eventDescriptions">
  <div id="showalways">First Block</div>
  <div id="divblock1">Second Block</div>
  <div id="divblock2">Third Block</div>
</div>
  • 0
    Таким образом, в случае нажатия второй и третьей кнопки скрыть первый блок. Название смешно, хотя: showalways.
  • 0
    Скрыть первый блок, только если другие блоки не отображаются. Если показывается любой второй и другие блоки, то должен быть показан первый блок.
Показать ещё 1 комментарий
Теги:
show-hide

1 ответ

0

Добавить скрытые события в divblock1 и divblock2

где ты

проверьте, скрыт ли другой divblock и добавьте:

 $('#showalways').hide();

И для показа событий divblock1 и divblock2:

 $('#showalways').show();

Ещё вопросы

Сообщество Overcoder
Наверх
Меню