找回密码
 加入
搜索
查看: 2326|回复: 7

[IE类操作] autoit 在IE11下执行_IEAction的click时无响应

  [复制链接]
发表于 2018-7-26 11:18:35 | 显示全部楼层 |阅读模式
请教高手:autoit 在IE8下执行IE元素_IEAction的click正常,但在IE11下能找到IE元素,执行_IEAction的click时就无响应,是什么原因啊?怎么解决?

发表于 2018-7-26 11:43:32 | 显示全部楼层
有些網頁針對IE版本的不同
框架也會不同
但是大部分不同的地方會差異很大
例如YAHOO信箱的網頁在IE8跟IE11就幾乎完全不同
快要等於全部重抓IE的元素
如果可以請提供網址
我可以試試看
 楼主| 发表于 2018-7-26 13:09:13 | 显示全部楼层
本帖最后由 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
 楼主| 发表于 2018-7-26 13:12:34 | 显示全部楼层
本帖最后由 yh_albin 于 2018-7-26 13:17 编辑

我在IE11下也查了了网页的“源文件”,代码与IE8下没啥区别。就是在IE11下_IEAction($CheckOut, "click")没响应,但_IEAction的执行结果返回的是“1”。
发表于 2018-7-26 14:40:01 | 显示全部楼层
先看看是不是有同樣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
发表于 2018-7-26 15:23:22 | 显示全部楼层
没那么复杂,我以前也是遇到此问题,换个高版本AU3就解决了
 楼主| 发表于 2018-7-26 16:56:39 | 显示全部楼层
duxing 发表于 2018-7-26 15:23
没那么复杂,我以前也是遇到此问题,换个高版本AU3就解决了

多谢大师!
下了个最新的autoit 3.3.14.5,重新调试,解决了。
发表于 2018-8-3 14:44:59 | 显示全部楼层
我的win10 ie11,换了个SciTE-Lite  Version 3.5.4 都开不了_IE_Example
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-24 01:38 , Processed in 0.079680 second(s), 19 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表