这个问题适用于通过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]相反)。
答案 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)
。