2017-06-18 22 views
1

enter image description here我正在使用最新版本的selenium网络驱动程序,对于响应式网页有没有什么办法可以使用单个webelement(作为列表webelement)来访问行数据。如何在响应式网页中为一行使用单个网页元素

例如:下面的浏览器

iPad的分辨率(HTML 1格)CSS:

li > .csd-aabc-item > .terraVM-ResponsiveModel-container .terraVM-TableCard--truncated 

iPhone分辨率(HTML第2格):

li > .csd-aabc-item > .terraVM-ResponsiveModel-container .terraVM-CompactCard 

如果我使用@FindAll,获得两个定位器的列表大小,但我只需要一个。

回答

1

,您可以拨打局部类检查 - 例如,检查是否有与terraVM开始,包含Card类:

li > .csd-aabc-item > .terraVM-ResponsiveModel-container [class^=terraVM][class*=Card] 

^=手段“开头”,*=的意思是“包含” 。

不知道如何独特的定位,这将是您的网页上,但回答基于什么的问题提供。

+0

为响应:) 如果我用这个逻辑@aiecxe感谢,它更是增加列表大小。示例:我使用list web元素来获取所有行数据(目前我有4行,每行都有一个名称值)。如果这样做我得到列表大小为16(4每个数据,4每一行* 2(iPhone和iPad)号决议) 我需要的是具有相同的CSS,如果我缩小网页元素/扩展网页到iPhone或iPad的分辨率我应该只将列表大小设为4。不确定这是否可行。 –

+0

@JavedKhan好的,谢谢。您能否发布您正在使用的HTML结构?这将有助于将问题置于上下文中。 – alecxe

+0

@aiecxe请参考:https://i.stack.imgur.com/UTQeT.png –