2016-08-02 65 views
1

我想将每个元素的最后一个类复制到他们在jQuery中的父元素li元素。如何将元素的最后一个类复制到jQuery中的另一个元素?

这是当前的标记:

<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> 

我要复制,并通过菜单篮,菜单,图表,菜单卡车到其父李类=“菜单项菜单项,类型 - post_type菜单项对象页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元素的每个最后一个类相关联?

+0

没有得到最后一堂课源有点脆弱? – gcampbell

+0

你用'.addClass()'试过'.children()'或'.parent()'吗? – AdamMcquiff

+0

元素上没有“最后一类”的东西。它们以任意顺序存储,除非你想开始以''字符串的形式入侵'class'属性值 - 这不是一个好主意。 –

回答

2

你可以使用.each()

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

你是天才!!!!!谢谢 –

+0

哈哈!打败我吧 –

相关问题