我正在尝试使用第n个子伪选择器来选择锚点元素的范围。问题是,第n- child只适用于子元素,但我有一个这样的结构:
<div>
<a>first link>
</div>
<div>
<a>Second link</a>
</div>
<div>
<a>Third link</a>
</div>在这种情况下,我发现下面的选择器对选择前两个匹配的元素很有用,它不起作用:
$("a:nth-child(n+1):nth-child(-n+2)")我在这里创建了一个示例:http://jsfiddle.net/o6w5orom/,在第一个示例中,返回的是所有元素,而不是前2个元素。在第二个示例中,只返回直接的子元素。
那么,有没有一种方法可以构造jQuery的CSS选择器,它基本上会返回一系列元素,比如第n个子元素,但可以处理jQuery对象的匹配元素呢?我想构造选择器,而不是编写逻辑来处理jQuery对象。
发布于 2015-08-26 20:20:24
用法:$("div:nth-child(n+1):nth-child(-n+2) a")
使用nth-child选择a,然后转到div的div
发布于 2015-08-26 20:22:42
是的,你是对的- :nth-child只返回直接的子代。但问题出在哪里呢?使用find。
$("div:nth-child(n+1):nth-child(-n+2)").find('a')
https://stackoverflow.com/questions/32226200
复制相似问题