我在IE上使用Watir。 在网站上,有一个链接,由于某种原因,它不适用于Watir。下面的Watir行会导致屏幕闪烁,同时它应该下载一个CSV文件。
browser.frame(:id,“ptifrmtgtframe”)。link(:id =>'URL $ 1')。click
要替换此命令,我使用了以下AutoIt脚本:
#include <IE.au3>
$oIE = _IEAttach ("Process Monitor")
$oIE = _IEFrameGetCollection ($oIE, 0)
$oLink = _IEGetObjById( $oIE, "URL$1" )
$x = _IEPropertyGet($oLink, "screenx")
$y = _IEPropertyGet($oLink, "screeny")
MouseMove( $x + 100, $y + 5 )
MouseClick( "left" )
现在,我想将此AutoIt脚本转换为Watir。 最大的问题是,我无法获得链接的X和Y. 你能帮忙吗?
我还检查了this example,但收到错误消息:
I:/watir/abs_pos.rb:47:in '<module:WindowsInput>': uninitialized constant WindowsInput::Win32API (NameError)
from I:/watir/abs_pos.rb:46:in '<main>'
我还添加了require 'win32ole'
,但没有帮助。
我使用Win 7 x64,IE 8。
答案 0 :(得分:1)
我的猜测是你必须发起一个JavaScript事件:How to find out which JavaScript events fired?。
并且,正如Dave所说,向我们展示HTML,或提供页面链接,如果它是公开的。