2013-11-21 49 views
-2

正如標題所說,我想擁有字符串類而不是數字,這是我目前擁有的腳本!jQuery:如何在字/字符串中添加/使用數字類?

$('ul#nav li').each(function (index, element) { 
    $(element).addClass('number_' + (index+1).toString()); 
}); 

這就是我得到的,它工作正常,沒有錯;

<ul id="nav"> 
    <li class="number_1"></li> 
    <li class="number_2"></li> 
    <li class="number_3"></li> 
    <li class="number_4"></li> 
    <li class="number_5"></li> 
</ul> 

但我希望它返回類中的字符串和非數值!所以像這樣的東西;

<ul id="nav"> 
    <li class="first"></li> 
    <li class="second"></li> 
    <li class="third"></li> 
    <li class="fourth"></li> 
    <li class="fifth"></li> 
</ul> 

請注意:這些類生成/動態添加,因此該字符串類應動態地增加,因此可能有100個列表項!

謝謝您的時間,感謝所有幫助:)

+1

不錯的想法。但現在在jQuery中沒有任何準備好的功能可以用來實現這一點。 – Bhadra

+1

是的,它是可以實現的。只有你有一個帶有'['1'映射的字典:'first','2':'second','3'=>'third',...]' – Aniket

+0

這就是我想要做的,所以也許有一個功能,這樣做,然後再次使用它:) –

回答

2

你想是什麼讓沒有真正意義上的,但你可以用數組實現它:

<script type="text/javascript"> 
    var listClasses = new Array("first", "second", "third", "fourth",.....); 
</script> 

然後使用一些代碼位修改:

$('ul#nav li').each(function (index, element) { 
    $(element).addClass(listClasses[index]); 
}); 
+0

謝謝,是的,我知道它沒有意義,但由於我的限制,我不能使用數字類!我已經將它作爲數組使用,但是這意味着我必須手動添加類:(乾杯 –

+0

你看過http://stackoverflow.com/questions/15809950/javascript-ordinal-suffix-for-numbers-with-specific-css-class?它看起來像也許有人想做同樣的事情,也許這些答案中的一個可以幫助你找出如何不使用數組,但算法生成的話 –

+0

是的,隊友已經看過,但仍然在開始時使用數字, t允許在CSS中:) –