1

私は、親と子の両方で異なる色を持ち、ホバー状態になると変化するドロップダウンメニューに取り組んでいます。

http://jsfiddle.net/cELJ6/1/

でも、これにはちょっとした癖があります。

Homeリンクは正常であり、ホバーされてProductsいないSection2ときは正常です。

問題は:

1)にカーソルを合わせるProductと、リンクの色が白である必要があります。(BGの色はきれいで、正しく機能しています)

2)などの子要素にカーソルを合わせるとProduct1Productsリンクの色は白である必要があります

Productsとの間をホバリングSection2すると、かなり風変わりなようです。色が白の場合もあれば、灰色の場合もあります(#777)

これを回避する方法はありますか?

ありがとう

4

2 に答える 2

1
$('ul > li.leaf').each(function(){
    $(this).mouseenter(function(e){
        $(this).find('a').css('color','white');
    });
    $(this).mouseleave(function(e){
        $(this).find('a').css('color','#777777');
    });

   });

 $('.expanded > ul.leaf').each(function(){
    $(this).mouseenter(function(e){
        $(this).find('a').css('color','white');
    });
    $(this).mouseleave(function(e){
        $(this).find('a').css('color','#777777');
    });

   });
于 2012-05-30T08:26:35.437 に答える
0

それは癖ではありません、それはあなたのコードがどのように機能するかです。

javascriptの色の定義は、通常のcssスタイルよりも高いインラインスタイルとして適用されます。これは灰色を適用し、癖につながります。とにかくJavaScriptがあるのはなぜですか?

編集:私はあなたのフィドルをあなたがそれを振る舞わせたいと思う方法に編集しました。を与えながら、色の宣言をからa親に移動しました。lia color:inherit

http://jsfiddle.net/cELJ6/2/

于 2012-05-30T08:22:01.857 に答える