Тупик - это когда два потока ждут друг друга, ни один из них не может продолжаться, пока другой не сделает первый, и поэтому оба застряли.
Для взаимной блокировки требуется как минимум 2 блокировки, и оба потока должны содержать код, который принимает блокировки, а также ожидает снятия блокировок.
Поток 1 имеет блокировку A и хочет блокировку B, поэтому он ожидает снятия блокировки B.
Поток 2 имеет блокировку B и хочет блокировку A, поэтому он ожидает снятия блокировки A.
Теперь у вас тупик. Оба потока ожидают блокировки, поэтому ни один из них не выполняется, поэтому ни один из них не может снять блокировку, которую ожидает другой.
Я уверен, что вы уже знаете, что это стиль меню «аккордеон». Я просто предлагаю - если вы предпочитаете вариант, отличный от jQuery, - посетить страницу css-play Стю Николла , где у него есть чистая xhtml / css версия этого стиля меню аккордеона.
Это называется меню аккордеона. Вот руководство о том, как создать его с помощью jQuery.
Это называется меню аккордеона и доступно в пользовательском интерфейсе jQuery:
Это аккордеонное меню.
Документы jQuery здесь:
http://docs.jquery.com/UI/Accordion
http://plugins.jquery.com/project/accordion
Это аккордеонное меню, доступное как виджет в JQuery UI - http://docs.jquery.com/UI/Accordion
Это известно как шаблон пользовательского интерфейса Accordian Menu . Существует довольно много реализаций плагина jQuery, в том числе этот: jQuery Accordion .
Дополнительная информация и несколько хороших примеров здесь: