2012-09-29 32 views
0

我有一個表示列表中的項目的變量集。添加一個類以在可變位置列出

我也有名單:

<ul> 
    <li class="mylist"><a href="#">Item 1</a></li> 
    <li class="mylist"><a href="#">Item 2</a></li> 
    <li class="mylist"><a href="#">Item 3</a></li> 
    <li class="mylist"><a href="#">Item 4</a></li> 
    <li class="mylist"><a href="#">Item 5</a></li> 
    <li class="mylist"><a href="#">Item 6</a></li> 
</ul> 

我需要做的是一個CSS類的變量值的位置添加到列表中,多數民衆贊成。

例如:

If myVariable = '1' then list will look like this: 

<ul> 
    <li class="mylist"><a href="#" class="myclass">Item 1</a></li> 
    <li class="mylist"><a href="#">Item 2</a></li> 
    <li class="mylist"><a href="#">Item 3</a></li> 
    <li class="mylist"><a href="#">Item 4</a></li> 
    <li class="mylist"><a href="#">Item 5</a></li> 
    <li class="mylist"><a href="#">Item 6</a></li> 
</ul> 

If myVariable = '3' then list will look like this: 

<ul> 
    <li class="mylist"><a href="#">Item 1</a></li> 
    <li class="mylist"><a href="#">Item 2</a></li> 
    <li class="mylist"><a href="#" class="myclass">Item 3</a></li> 
    <li class="mylist"><a href="#">Item 4</a></li> 
    <li class="mylist"><a href="#">Item 5</a></li> 
    <li class="mylist"><a href="#">Item 6</a></li> 
</ul> 

等。

我該怎麼做?

回答

2
$("li.mylist").eq(position).find("a").addClass("myClass") 
2
var num = 3; 
$('.mylist').eq(num - 1).find('a').addClass('myClass'); 
+1

節點列表是從零開始的,所以'.EQ(NUM - 1)' –

+0

還是我'num'變量可能是從零開始...... –

+1

它可以,但OP的不是。 –

2
var value = 3; 
$('ul li.mylist a').filter(function() { 

    return $(this).text() === 'Item ' + value; 

}).addClass('myclass'); 
+0

我的第一個想法是「多麼愚蠢」,但後來我意識到這是一個很小的機會,這是正確的答案:D –

+1

@Miszy - 如果價值可能出現不止一次,這是我認爲首選的方式。 –

+0

是的,這個問題只是不清楚它是關於項目的索引還是內容。 –

相關問題