2017-06-18 58 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 –