如何通过索引号打破.each()

Rec*_*şek 5 javascript jquery

我想打破列表中的每三个项目,并为该孩子添加一个类;

<ul>
    <li>1</li>
    <li>2</li>
    <li>3</li><!--target list item-->
    <li>4</li>
    <li>5</li>
    <li>6</li><!--target list item-->
    <li>7</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

任何的想法?

jor*_*ebg 7

您应该使用nth-child伪选择器

$("ul li:nth-child(3n)").addClass("break-here");
Run Code Online (Sandbox Code Playgroud)

  • @luso; jQuery的选择器语法可能看起来像CSS,但实际上是在代码中实现的.无论浏览器对CSS选择器的支持如何,jQuery选择器都应该可以工作. (4认同)
  • 尼斯.我会循环,所以你只是教我一些东西. (3认同)

Aln*_*tak 5

有一个CSS伪选择器:

:nth-child(xn+y)
Run Code Online (Sandbox Code Playgroud)

选择每个x孩子开始y,所以在你的情况下x = 3y = 1(默认)

$('li:nth-child(3n)').addClass(...);
Run Code Online (Sandbox Code Playgroud)

演示http://jsfiddle.net/8WDK4/

请参阅http://www.w3.org/TR/selectors/#nth-child-pseudo示例