更改列表元素的类

时间:2011-07-16 02:11:09

标签: javascript jquery html html-lists

我想将每个列表(#list)项的类更改为Array处的对应项。我有一个这样的列表:

<ul id="list">
    <li>Banana</li>
    <li>Apple</li>
    <li>Pear</li>
    <li>Strawberry</li>
    <li>Lemon</li>
</ul>

我有这个阵列:

["ban", "appl", "per", "straw", "lemn"]

我想要的是jQuery .addClass()功能可以按class的顺序更改Array的每个项目。结果如下:

<ul id="list">
    <li class="ban">Banana</li>
    <li class="appl">Apple</li>
    <li class="per">Pear</li>
    <li class="straw">Strawberry</li>
    <li class="lemn">Lemon</li>
</ul>

我该怎么做?

4 个答案:

答案 0 :(得分:4)

should work适合您:

var classes = ["ban", "appl", "per", "straw", "lemn"];

$('#list > li').addClass(function(index) {
  return classes[index];
});

您可以看到此次重载的文档(需要function(index, currentClass)回调的文档)on the jQuery website

答案 1 :(得分:2)

$('#list > li').each(function(i){
    $(this).addClass( myArray[i] );
});

答案 2 :(得分:2)

var myArray = ["ban", "appl", "per", "straw", "lemn"];
$("#list > li").each(function(index) {
    $(this).addClass(myArray[index]);
});

答案 3 :(得分:1)

$.each(myArray, function(i, value){
        $('#list li').eq(i).addClass(value);
    }
);