У меня в настоящее время есть некоторые проблемы с моим меню, оно довольно простое в соответствии с требованиями.
ВЫПУСК:
Пользователь может нажать на кнопку менюодин раз и открыв подменю, пользователь затем нажимает на следующую кнопку, открывающую это подменю, это повторяется в соответствии с количеством опций меню.После того, как пользователь щелкнул по ним, если пользователь нажмет другую кнопку меню один раз, он не откроется, если пользователь щелкнет по нему во второй раз, когда он откроется.Таким образом, после одного запуска через меню будет реагировать только на два клика пользователей, а не один.Эта проблема возникает в других областях.
Я подозреваю, что это как-то связано с моими обработчиками кликов и всплывающими событиями, но мои знания JQuery самообучаются, поэтому я могу справиться с парой указателей:
Код JQuery
$(document).ready(function(){
$('#menu span').hide();
$('#menu li').not('.sub_menu').toggle(function(){
//$('#menu span').hide();
$('.open').hide();
//$(this).next().not('#mm_choice, .sub_menu').show();
$(this).nextUntil('li').not('#mm_choice, .sub_menu').show().addClass('open');
}, function(){
//$(this).next().not('#mm_choice, .sub_menu').hide();
//$(this).nextUntil('li').not('#mm_choice, .sub_menu').hide().removeClass('open');
$('.open').removeClass('open').hide();
});
});
КОД ИСТОЧНИКА HTML
<div id="menu" title="Main Menu">
<ul id="m_choices" class="main_menu">
<li id="mm_choice" title="Customer Segmentation Menu">Customer Segmentation</li>
<span id="c_seg"><li class="sub_menu" title="Cust Seg Menu1">Cust Seg Menu1</li><li id="c_seg" class="sub_menu" title="Cust Seg Menu2">Cust Seg Menu2</li><li id="c_seg" class="sub_menu" title="Cust Seg Menu3">Cust Seg Menu3</li></span>
<li id="mm_choice" title="Industry Menu">Industry Selection</li>
<span id="all_ind"><li class="sub_menu" title="View All Industries">View All</li></span>
<span id="spec_ind"><li class="sub_menu" title="View information on a specific Industry">View Specific Industry</li></span>
<li id="mm_choice" title="Customer Satisfaction Menu">Customer Satisfaction</li>
<span id="all_cs"><li class="sub_menu" title="View every industry's CS survey results">View All</li></span>
<span id="spec_cs"><li class="sub_menu" title="View a specific industry's CS survey results">View Specific Industry</li></span>
<li id="mm_choice" title="Performance Measures Menu">Performance Measures</li>
<span id="all_pm"><li class="sub_menu" title="Trend Menu">View All</li></span>
<span id="spec_pm"><li class="sub_menu" title="Trend Menu">View Specific Industry</li></span>
<li id="mm_choice" title="Business Performance Menu">Business Performance</li>
<span id="all_bp"><li class="sub_menu" title="Bus Perf Menu">View All</li></span>
<span id="spec_bp"><li class="sub_menu" title="Bus Perf Menu">View Specific Industry</li></span>
<li id="mm_choice" title="Trend Analysis Menu">Trend Analysis Menu</li>
<span id="all_trends"><li class="sub_menu" title="Trend Menu">View All</li></span>
<span id="spec_trends"><li class="sub_menu" title="Trend Menu">View Specific Industry Trends</li></span>
</ul>
</div>
Файл menu.php (разметка html) импортируется (с использованием phpinclude ();) в файл index.php.Файл JQuery импортируется в declerations.php, импортируется в index.php в заголовке.Declerations.php содержит все необходимые библиотеки JQuery.Намерение состоит в том, чтобы добавить анимацию пользовательского интерфейса на более позднем этапе, чтобы были разработаны методы .show () и .hide ().