0

親メニューの下に子メニューがある場合、私がワードプレスで使用しているテーマの1つはトグルメニューです。

これは現在のjsコードです

    var navItemDropdown = $('#nav li .dropdown');
navItemDropdown.each(function(){
    thisDropdown = $(this);
    $(this).parent().prepend('<span class="sub-nav-toggle"></span>');
});

$('body').on('click','.sub-nav-toggle',function(event){

    $(this).parents('li').toggleClass('active');
    thisDropdown = $(this).parents('li').find('.dropdown');
    thisDropdown.slideToggle('fast');
    return false;

});

<span class="sub-nav-toggle"></span>子メニューがあれば追加されます。

子メニューを持つメニューのコードはこのようになります

    <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-22"><span class="sub-nav-toggle"></span><a href="#">About Us</a>
<section class="dropdown"><ul>
    <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-26"><a href="page_id=6">Who we are</a></li>
    <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-25"><a href="page_id=7">Our Vision</a></li>
</ul></section>
</li>

私が達成したいの<span class="sub-nav-toggle"></span>は、 を挿入する代わりに、 a href タグ内に class="sub-nav-toggle" を挿入したいということです。つまり、<a>タグは次のようになります

<a class="sub-nav-toggle" href="#">About Us</a>

Wordpress メニューからメニューのクラスを追加する方法はありますが、タグで<li>はなく<a>タグ内にクラスを追加するだけなので、機能せず、その方法では実行できません。

私を助けてください。ありがとうございました。

4

1 に答える 1

2

これを変更する必要があると思います:

$(this).parent().prepend('<span class="sub-nav-toggle"></span>');

これに:

$(this).prev().addClass('sub-nav-toggle');
于 2013-11-05T07:20:36.487 に答える