autoit 在IE11下执行_IEAction的click时无响应
请教高手:autoit 在IE8下执行IE元素_IEAction的click正常,但在IE11下能找到IE元素,执行_IEAction的click时就无响应,是什么原因啊?怎么解决?有些網頁針對IE版本的不同
框架也會不同
但是大部分不同的地方會差異很大
例如YAHOO信箱的網頁在IE8跟IE11就幾乎完全不同
快要等於全部重抓IE的元素
如果可以請提供網址
我可以試試看 本帖最后由 yh_albin 于 2018-7-26 13:21 编辑
mars0916 发表于 2018-7-26 11:43
有些網頁針對IE版本的不同
框架也會不同
但是大部分不同的地方會差異很大
不好意思,网址是内网的。
If $CheckOut=0 Then
$CheckOut=_IEGetObjById($oIE,"ctl00_ctl46_g_23105813_1daf_4c2a_b652_8ff42b3594ef_ctl00_btnCheckOut")
EndIf
;MsgBox(1,1,IsObj($CheckOut))
_IEAction($CheckOut, "click")
Sleep(2000)
_IEQuit($oIE)
我调试了,上面_IEGetObjById已经取到了该Id,且_IEAction的返回结果是“1”,但就是没有执行网页上的该元素的OnClick
本帖最后由 yh_albin 于 2018-7-26 13:17 编辑
我在IE11下也查了了网页的“源文件”,代码与IE8下没啥区别。就是在IE11下_IEAction($CheckOut, "click")没响应,但_IEAction的执行结果返回的是“1”。 先看看是不是有同樣ID
給你一段代碼
請依你的環境修改
這樣可以看是不是有重複ID
$oIE = _IEAttach($hwnd)
$objs = _IETagnameGetCollection ($oIE ,"i")
For $obj In $objs
If $obj.id == 'ctl00_ctl46_g_23105813_1daf_4c2a_b652_8ff42b3594ef_ctl00_btnCheckOut' then
ConsoleWrite($obj.id & @CRLF)
EndIf
Next 没那么复杂,我以前也是遇到此问题,换个高版本AU3就解决了 duxing 发表于 2018-7-26 15:23
没那么复杂,我以前也是遇到此问题,换个高版本AU3就解决了
多谢大师!
下了个最新的autoit 3.3.14.5,重新调试,解决了。 我的win10 ie11,换了个SciTE-LiteVersion 3.5.4 都开不了_IE_Example
页:
[1]