我使用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