我使用watir-webdriver並嘗試查找元素的位置,如$browser.div(:id, "foo")
。當我嘗試點擊它,在chromedriver說獲取元素的位置/位置
元件沒有以點點擊(-1707,-799.5)
怎麼可能得到這個座標的元素?我嘗試這樣做:
http://wiki.openqa.org/display/WTR/Right+Click+an+Element
,但我得到一個錯誤,當我試着撥打document()
方法。
我使用watir-webdriver並嘗試查找元素的位置,如$browser.div(:id, "foo")
。當我嘗試點擊它,在chromedriver說獲取元素的位置/位置
元件沒有以點點擊(-1707,-799.5)
怎麼可能得到這個座標的元素?我嘗試這樣做:
http://wiki.openqa.org/display/WTR/Right+Click+an+Element
,但我得到一個錯誤,當我試着撥打document()
方法。
我假設你使用的是Watir-Webdriver,因爲你使用的是Chromedriver。你引用的文章實際上是Watir,它並不總是與Watir-Webdriver一樣。
對於Watir-Webdriver,您可以通過直接調用webdriver方法來獲取元素位置。
試試這個:
location = browser.element(:id, 'id').wd.location
puts "location x = #{location[0]}"
puts "location y = #{location[1]}"
我覺得那個位置(.wd.location)是一個相對位置,這是瀏覽器頁面的範圍內,而不是系統屏幕上的絕對位置。
說,它會得到(700,300),因爲您的瀏覽器是最大化。但它得到(500,200),因爲您的瀏覽器被移動....
我得到了一個按鈕的「wd.location」,然後從Autoit發送鼠標單擊事件「autoit.MouseClick(」left「,x, Y)」。我發現鼠標不在按鈕中。 我必須添加一個偏移來解決它,但真正的問題是偏移量隨我的瀏覽器位置而變化...
無效鏈接,但存檔在http://web.archive.org/web/20130516055542/http:/ /wiki.openqa.org/display/WTR/Right+Click+an+Element – 2016-01-29 23:17:24