0

ばかげた問題があるので、サブメニューが表示されているときにクラスをliaに追加したいだけです。これは、サブメニューにあるものも含めて、すべてのliaにクラスをカスケードして追加します。

<ul id="nav">
    <li><a href="#" target="_self">HOME</a></li>
    <li class="dropdown"><a href="#" target="_self">SYSTEM MANAGER<span aria-hidden="true" data-icon="&#xe000;"></span></a>
        <ul>
             <li><a href="#" target="_blank">Link 1</a></li>
        </ul>
    </li>
</ul>

JS

$('li.dropdown').on('mouseenter mouseleave', function(e){
        e.preventDefault();
        if (e.type === 'mouseenter')
            $(this).addClass('hilight');
        else
            $(this).removeClass('hilight');
    });

CSS

body header #headerContain nav#nav-wrap ul#nav li.dropdown.hilight a {
  color: #db4105;
}

親のli.dropdownaにのみ適用し、子のli aにカスケードしないようにするにはどうすればよいですか?

4

1 に答える 1

2

子セレクターを使用する必要があります。CSSを変更するだけです。

body header #headerContain nav#nav-wrap ul#nav li.dropdown.hilight > a {
  color: #db4105;
}
于 2013-03-27T02:40:17.897 に答える