如何将最后一个元素类复制到jQuery中的另一个元素?

我试图将每个元素的最后一个类复制到jQuery中的父li元素 .

这是当前的标记:

<nav class="menu-uber-main-menu-container">

    <ul class="menu">

        <li class="menu-item menu-item-type-post_type menu-item-object-page page_item">
            <a href="#" class="">
                <i class="fa fa-shopping-cart fa-lg menu-basket"></i>
                <span>Home</span>
            </a>
        </li>


        <li class="menu-item menu-item-type-post_type menu-item-object-page page_item">
            <a href="#" class="">
                <i class="fa fa-line-chart fa-lg menu-chart"></i>
                <span>About</span>
            </a>
        </li>


        <li class="menu-item menu-item-type-post_type menu-item-object-page page_item">
            <a href="#" class="">
                <i class="fa fa-truck fa-lg menu-truck"></i>
                <span>Blog</span>
            </a>
        </li>


    </ul>

</nav>

我想复制并传递菜单篮子,菜单图表,菜单卡车到他们的父级li class =“menu-item menu-item-type-post_type menu-item-object-page page_item”

结果应该是:

<ul class="menu">

        <li class="menu-item menu-item-type-post_type menu-item-object-page page_item menu-basket">
            <a href="#" class="">
                <i class="fa fa-shopping-cart fa-lg menu-basket"></i>
                <span>Home</span>
            </a>
        </li>


        <li class="menu-item menu-item-type-post_type menu-item-object-page page_item menu-chart">
            <a href="#" class="">
                <i class="fa fa-line-chart fa-lg menu-chart"></i>
                <span>About</span>
            </a>
        </li>


        <li class="menu-item menu-item-type-post_type menu-item-object-page page_item menu-truck">
            <a href="#" class="">
                <i class="fa fa-truck fa-lg menu-truck"></i>
                <span>Blog</span>
            </a>
        </li>


    </ul>

</nav>

获取元素的最后一个类的代码是这样的:

var lastClass = j('.menu-uber-main-menu-container > .menu > .menu-item > a > .fa').attr('class').split(' ').pop();

如何以关联方式为每个li元素传递每个最后一个类?

回答(1)

2 years ago

你可以用 .each()

$('.menu-uber-main-menu-container > .menu > li').each(function(){
    var className = $(this).find('.fa').attr('class').split(' ').pop();
    $(this).addClass(className);
});