代码之家  ›  专栏  ›  技术社区  ›  John Mee

在奇偶类循环遍历项时,如何循环该类?

  •  6
  • John Mee  · 技术社区  · 14 年前

    <li>Cat</li>
    <li class="odd">Dog</li>
    <li>Horse</li>
    <li class="odd">Noddy</li>
    

    解决方案 suggested here 看起来像是我们诺迪的开始,我们可以进一步改进,以便于消化。

    3 回复  |  直到 14 年前
        1
  •  6
  •   John Mee    14 年前

    不要介意。像往常一样过度复杂。。。

    只需使用:odd选择器和addClass。。。

    $('#template').tmpl(data).appendTo('#list')
    $("#list li:odd").addClass('odd')
    
        2
  •  3
  •   bobef    13 年前

    经过几次反复试验才找到解决办法。您可以使用{{=}标记计算表达式:

    {{each(i) Animals}}<li class="{{= i % 2 ? 'even' : 'odd'}}">...</li>{{/each}}
    

    当然,您可以修改它以完全满足您的需要-您可以将类放入其中,并为奇数或偶数打印空值。

    另一个解决方案是使用一个函数(jquery tmpl文档中有这样的例子),但是它很难看。

        3
  •  0
  •   SunnyRed    13 年前

    模板是添加奇数类的地方。逻辑和性能方面。

    Here 是一个修补程序,用于在嵌套模板中包含索引。如果您想拥有额外的$odd属性,可以很容易地扩展如下:

    jQuery.map( data, function( dataItem, index ) {
        if(dataItem){
             dataItem.$index = index;
             dataItem.$odd = index % 2 === 1;
        }