получение предыдущего тега p с помощью jquery для изменения фона - PullRequest
1 голос
/ 12 июля 2011

у меня следующая проблема.У меня есть раскрывающаяся навигация css, и, если на раскрывающейся части навигации есть наведение мыши, я хочу, чтобы фон «заголовка навигации» сохранял свой цвет фона, который он получает при наведении на него курсора.Проблема в том, что если пользователь перемещается и наводит курсор на выпадающий список, состояние наведения «навигационного курса» возвращается к «нормальному».Вот почему я подумал, что могу использовать jquery, чтобы изменить его.

Но, к сожалению, я не знаю, как выбрать конкретный элемент.

Вот пример для навигации:

<ul> 
                    <li> 
                        <p class="naviHead first">Finanzen</p> 
                            <ul> 
                                <li><a href="http://www.spardaxx.de/kredit" title="SparDaxx Ratenkredit">Ratenkredit</a></li>
                                <li><a href="http://www.spardaxx.de/baufinanzierung" title="SparDaxx Baufinanzierung">Baufinanzierung</a></li>
                                <li><a href="http://www.spardaxx.de/altersvorsorge" title="SparDaxx Riester Rente">Riester Rente</a></li>
                            </ul> 
                    </li> 
                </ul> 

Таким образом, если пользователь наводит курсор на тег p, открывается раскрывающийся список ul.Теперь я хочу изменить цвет фона для p, если кто-то парит над следующим ul ..

, вот мой jquery до сих пор

$().ready(function() {
            $('#TopNav ul ul').mouseover(function() {
                 $(this).parents('p.naviHead').filter(':first').css("background", "black");


            })
        });

Я думаю, решение я простое, но японятия не имею .. Так что любая помощь приветствуется.Спасибо!:)

Ответы [ 2 ]

2 голосов
/ 12 июля 2011
$(this).prev().css("backgroundColor", "black");  

или если у вас более сложный макет, тогда -

$(this).parent().find('p.naviHead').css("backgroundColor", "black");

может быть лучше

1 голос
/ 12 июля 2011
$(this).siblings('p.naviHead').css("background", "black");

$('#TopNav ul ul').mouseleave(function() {
  $(this).parent().find('p.naviHead').css("backgroundColor", "yourPreviosColor");
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...