2013-01-19 68 views
0

我在循环js中遇到问题。我想将data-icon的值从.nav类复制到li#item-control。反正有没有简单的方法来解决它与jQuery?将元素的属性复制到javascript循环中的其他元素

<div id="nav-container"> 
    <ul class="nav"> 
    <li data-icon="images/1.png">Item 1</li> 
    <li data-icon="images/2.png">Item 2</li> 
    <li data-icon="images/3.png">Item 3</li> 
    </ul> 
</div> 

<div id="item-control"> 
    <li>Item Control 1</li> 
    <li>Item Control 2</li> 
    <li>Item Control 3</li> 
</div> 

我已经试过:

$(document).ready(function() { 
    var a = 1; 
    $('#container #nav-container ul.nav li').each(function() { 
     var item_control = $(this).parent().parent().parent().find('#item-control li'); 
     item_control.addClass('item' + a); //this is what I tried before adding data-icon attributes to #item-control li 
     a++; 
    }); 
}); 

回答

0
var $navItems = $('.nav li'), 
    $itemControlItems = $('#item-control li'); 
$.each($navItems, function(index, el) { 
    $($itemControlItems[index]).data('icon', $(el).data('icon')); 
}); 

Fiddle

+0

它不仍能正常工作,从.nav L1数据,图标不会在#项目控制显示li – porpor

+0

它不起作用,但它工作如果'.data('icon','改变'.attr('data-icon',' – imkost

相关问题