Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как сделать активный элемент при ховере (https://javascript.ru/forum/misc/12375-kak-sdelat-aktivnyjj-ehlement-pri-khovere.html)

TicTac 14.10.2010 19:05

Как сделать активный элемент при ховере
 
есть такое меню
<ul>
<li><a href="#">Металопрокат</a></li>
 <li>
            	<a class="png" href="#">Услуги</a>
            	<ul>
                	<li><a href="#">Профнастил</a></li>
                    <li><a href="#">Металопрокат</a></li>
                    <li><a href="#">Мобильные модульные здания</a></li>
                    <li><a href="#">Гнутые профиля</a></li>
                </ul>
            </li>
 <li><a href="#">Гнутые профиля</a></li>
</ul>


я сделал его выпадающим выпадает это
<ul>
                	<li><a href="#">Профнастил</a></li>
                    <li><a href="#">Металопрокат</a></li>
                    <li><a href="#">Мобильные модульные здания</a></li>
                    <li><a href="#">Гнутые профиля</a></li>
                </ul>


но теперь хочу вернуться в родительский li
<li>
      <a class="png" href="#">Услуги</a>
       <ul>..я тут сейчас..</ul>
</li>


и дописать в li класс, но как это сделать именно к нему, выходит выбрать все li этот и те что в вып. меню(

Был бы очень благодарен за помощь.

danik.js 15.10.2010 08:25

Сам то понял че написал?

TicTac 15.10.2010 12:29

конечно понял.

По шагам еще раз.

1. Есть такое меню
<ul>
<li><a href="#">Металопрокат</a></li>
 <li>
            	<a href="#">Услуги</a>
            	<ul>
                 <li><a href="#">Профнастил</a></li>
                    <li><a href="#">Металопрокат</a></li>
                    <li><a href="#">Мобильные модульные здания</a></li>
                    <li><a href="#">Гнутые профиля</a></li>
                </ul>
            </li>
 <li><a href="#">Гнутые профиля</a></li>
</ul>


2. На ссылках основного на hover весит фон
3. Выпадает меню у меня так
function openSubmenu(){
			$(this).find('ul').css('visibility', 'visible');
			
	}
	
	function closeSubmenu(){
			$(this).find('ul').css('visibility', 'hidden');
	}
	
	$(".top_menu li").bind("mouseover", openSubmenu);
	$(".top_menu li").bind("mouseout", closeSubmenu);


4. При перемещении курсора в список тот который выпал пропадает естественно ховер на ссылке.
5. Я хочу сделать чтобы ссылка или li основного меню оставалась подсвечиваемой чтобы видеть что я в этом меню
6. Для этого хочу в li на которой $(".top_menu li").bind("mouseover", openSubmenu) дописать класс и использовать класс cur
7. При $(".top_menu li").bind("mouseout", closeSubmenu); удалить класс cur

8. Не могу после $(this).find('ul').css('visibility', 'visible'); добраться по DOM вверх к li (родителя элемента ul) и дописать ему класс cur


Вот и все, кто нибудь подскажет?

TicTac 15.10.2010 12:33

Все я разобрался, почему не видел результата при использов. просто .parent() :)

danik.js 15.10.2010 12:56

Это делается не на js а на чистом css:
.top_menu ul{
    display: none;
}
.top_menu li:hover ul{
    display: block;
}
.top_menu>li:hover>a{
    color: red;
}

Это так, набросок, можешь погуглить.

TicTac 15.10.2010 14:00

Цитата:

Сообщение от danik.js
Это делается не на js а на чистом css:

не вижу в этом смысла.

danik.js 15.10.2010 17:01

Цитата:

Сообщение от TicTac
не вижу в этом смысла.

Сожалею...

TicTac 15.10.2010 21:05

Цитата:

Сообщение от danik.js
том смысла.

в смысле сожалею?

от чего мы уходим к чему вернемся при использованию только css
если на чистом css сожалею именно тебе

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

subzey 15.10.2010 22:19

А css всё ж милее, всех красивей и белее.

TicTac 15.10.2010 22:35

subzey, хорошо
далеко не будем, мне нужно ие6 included

какова реализация будет?


Часовой пояс GMT +3, время: 03:07.