ZIROKUL
@ZIROKUL

Как сделать фокус при наведении на выпадающие меню?

Есть меню при наведении на пункт появляется подчеркивание, если у пункта есть выпадающие меню то при переходе на выпадающее меню подчеркивание у родительского меню пропадает как сделать так что оно оставалось, и при клике на выпадающий пункт меню подчеркивание так же оставалось у родителя.
$(document).ready(function() {
    $(".root-item").hover(
   function(){ 
      $(this).children('.sss').css('display','block');      // навели курсор на объект   
      $(this).next('ul').css('margin-top','0px'); 
   },function(){
    $(this).children('.sss').css('display','none');      // отвели курсор с объекта     
        });
  });

<?if (!empty($arResult)):?>
<div class="horizontal-top-menu-color">
<ul class="horizontal-top-menu">
		<div class="bg-menu-right"></div>
		<div class="bg_menu-left"></div>
<?
$previousLevel = 0;
foreach($arResult as $arItem):?>
	<?if ($previousLevel && $arItem["DEPTH_LEVEL"] < $previousLevel):?>
		<?=str_repeat("</ul></li>", ($previousLevel - $arItem["DEPTH_LEVEL"]));?>
	<?endif?>
	<?if ($arItem["IS_PARENT"]):?>
		<?if ($arItem["DEPTH_LEVEL"] == 1):?>
			<li><a href="<?=$arItem["LINK"]?>" class="<?if ($arItem["SELECTED"]):?>root-item-selected<?else:?>root-item<?endif?>"><?=$arItem["TEXT"]?>
			<div class="sss"></div></a>
				<ul>
		<?else:?>
			<li<?if ($arItem["SELECTED"]):?> class="item-selected"<?endif?>><a href="<?=$arItem["LINK"]?>" class="parent"><?=$arItem["TEXT"]?>
			<div class="sss"></div>
			</a>
				<ul>
		<?endif?>
	<?else:?>
		<?if ($arItem["PERMISSION"] > "D"):?>
			<?if ($arItem["DEPTH_LEVEL"] == 1):?>
				<li><a href="<?=$arItem["LINK"]?>" class="<?if ($arItem["SELECTED"]):?>root-item-selected<?else:?>root-item<?endif?>"><?=$arItem["TEXT"]?>
				<div class="sss"></div>
				</a>
				</li>
			<?else:?>
				<li<?if ($arItem["SELECTED"]):?> class="item-selected"<?endif?>><a href="<?=$arItem["LINK"]?>"><?=$arItem["TEXT"]?>
				<div class="sss"></div>
				</a>
				</li>
			<?endif?>
		<?endif?>
	<?endif?>
	<?$previousLevel = $arItem["DEPTH_LEVEL"];?>
<?endforeach?>
<?if ($previousLevel > 1)://close last item tags?>
	<?=str_repeat("</ul></li>", ($previousLevel-1) );?>
<?endif?>
</ul>
</div>
<div class="menu-clear-left"></div>
<?endif?>
  • Вопрос задан
  • 416 просмотров
Решения вопроса 1
Ankhena
@Ankhena Куратор тега CSS
Нежно люблю верстку
Задать подчеркивание при наведении на родительский элемент, а не на саму ссылку основного меню. Либо на js добавлять ссылке класс типа .active

https://jsfiddle.net/bjcj98Lm/
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
24 нояб. 2024, в 03:11
500 руб./за проект
24 нояб. 2024, в 01:35
5000 руб./за проект
24 нояб. 2024, в 01:24
500 руб./за проект