jQuery .fadeTo (), как скрыть неактивные ссылки внутри меню? - PullRequest
0 голосов
/ 16 апреля 2011

У меня есть меню ul li , в котором я хочу сделать только ссылку с состоянием: hover с непрозрачностью 1.0, остальные будут установлены на что-то вроде 0.5. Таким образом, каждый раз, когда указатель мыши находится над ссылкой, он сохраняет свою непрозрачность 1,0, а остальные изменяют свою непрозрачность на 0,5. Есть ли что-то вроде !: focus , !: hover или!: Active в jQuery? Я вижу, что есть blur () , но это не соответствует случаю, я думаю, потому что мне нужны те, которые не активны, а не те, которые потеряли фокус.

- edited-- Лучше работает с: not () вместо .not (). Так что это работает:

        $('#menu > li > a').bind({
            mouseenter: function(){
                $('#menu > li > a:not(:hover)').fadeTo('slow', 0.5).stop(true,true);
            },
            mouseleave: function() {
                $('#menu > li > a').fadeTo('slow', 1.0).stop(true,true);
            }
        });

Ответы [ 2 ]

1 голос
/ 16 апреля 2011

Эй, вы пытались использовать .not ()

должно быть примерно так:

$('a').not(':hover');

.not ()

0 голосов
/ 16 апреля 2011

Вы можете использовать метод not () в сочетании с вашими: focus,: hover или: active selectors.

РЕДАКТИРОВАТЬ:

Или, если вы хотите, вы можете просто использовать CSS, как в этом рабочий jsFiddle демо .

Исходя из ваших комментариев, вот что вы хотите: исчезнуть анимированный jsFiddle .

...