CSS相当于XPath括号分组和索引?

时间:2012-02-24 22:32:46

标签: css xpath css3 jquery-selectors css-selectors

这个问题适用于通过Selenium / Web Driver进行测试,但适用于一般的Web应用程序/开发。

XPath有一个非常好的功能,即对给定的XPath进行分组并结合索引来说“给我从给定的XPath返回的所有/多个元素的元素N,指定为”(// someXpath)[n]“w / o报价。

我想知道CSS中是否有可翻译的等价物。如果不是通过标准CSS,那么Sizzle / jQuery怎么样?如果不存在,如果将来作为CSS标准添加这种东西会很好。类似于“(someCssSelector):nth-​​of-type(n)”

除此之外,XPath和CSS的替代方法是在描述DOM树时更具体,向上树以获得识别元素的唯一性(与(someShorterSimplerXpath)[n]相反)。

1 个答案:

答案 0 :(得分:1)

您可以访问类似数组的jquery集:$('selector')[n]

对于相对/ xpath,您可以使用children(),因此对于像//selector/foo这样的xpath,您需要$('selector').children('foo')。对于相对// xpath,您可以使用find()//selector//foo使用$('selector').find('foo')。对于..,您可以使用parent()//selector/..使用$('selector').parent()

使用CSS,虽然没有父选择器,但有一个nth-of-type伪类(specification here)。所以你可以做selector:nth-of-type(n)