У меня возникли проблемы с созданием выпадающего меню с помощью jquery/css.Создание простого выпадающего меню с помощью JQuery и CSS
В настоящее время каждое выпадающее меню для каждой категории является div, у которого есть скрытый экран, пока не будет виден категория. Я пытаюсь сделать jquery show/hide правильные divs на hover и mouseleave.
Логика, которую я использую, заключается в следующем: показать выпадающее меню, если либо ссылка категории, либо выпадающее меню зависает, и в противном случае скрыть раскрывающееся меню.
В частности, проблема, с которой я сталкиваюсь, - это выпадающий список, как только пользователь наводится на ссылку категории ... он закрывается, как только выпадающий div не зависает. Мне нужно, чтобы он закрылся, если выпадающее меню не зависало, или если ссылка категории не зависает ...
Прямо сейчас первое выпадающее меню остается открытым, даже если я навешиваю соседнюю категорию, пытаясь увидеть соседнюю категорию выпадающего меню, если только я сначала наведите указатель мыши на этот раскрывающийся список div.
Кроме того, выпадающее меню для каждого div сбрасывается первым, когда пользователь наводит курсор на категорию и появляется, когда пользователь наводит курсор на выпадающий div, что делает его искаженным.
Я знаю, что это может быть достигнуто с гораздо меньшим количеством кода :) Пожалуйста, имейте в виду, что я очень новичок в JQuery. Также имейте в виду, что я хотел бы сохранить настройку DIV для выпадающих меню, и я не использую списки.
Вот мой JQuery код:
<script type="text/javascript">
$(document).ready(function(){
$("#productsLink").hover(function(){
$("#productsMenu").slideDown();
});
$("#productsLink, #productsMenu").hover(function(){
$("#productsLink").css("color","red");
});
$("#productsMenu").mouseleave(function(){
$("#productsLink").css('color', 'white');
$("#productsMenu").slideUp();
});
$("#aboutLink").hover(function(){
$("#aboutMenu").slideDown();
$(this).css("color","red");
});
$("#aboutMenu").hover(function(){
$("#aboutMenu").hide();
});
$("#aboutMenu").hover(function(){
$("#aboutLink").css('color', 'red');
});
$("#aboutMenu").mouseleave(function(){
$("#aboutLink").css('color', 'white');
});
});
</script>
Извините, я использую шаблон, поэтому я не могу этого сделать, ссылки автоматически генерируются. Есть ли способ исправить это с помощью JQuery? – CSoverIT
Можете ли вы предоставить разметку? –
Нет, потому что это несколько разных документов, я использую шаблон. Это очень просто. В меню есть 4 категории ссылок, каждый из которых имеет соответствующий раскрывающийся список, который падает при наведении ссылки. – CSoverIT