AutoIt 单击一个在IE中没有名称或只有ID类的onClick Javascript按钮

AutoIt Clicking a onClick Javascript button with no name or id only class in IE

本文关键字:有名称 ID 类的 按钮 Javascript onClick 单击 IE 一个 AutoIt      更新时间:2023-09-26

尝试编写按钮脚本,单击亚马逊网站上的按钮,如下所示:

  <span class="action-go" onclick="MYO.JS.handle_action($(this).parent().find('.action option:selected').attr('value'),&#10;     $(this).parent().find('.action option:selected').attr('url'));">
          <input width="21" height="21" align="absmiddle" type="image" src="https://images-na.ssl-images-amazon.com/images/G/01/abis-ui/buttons/go._V187564664_.gif" border="0">
        </span>
<input width="21" height="21" align="absmiddle" type="image" src="https://images-na.ssl-images-amazon.com/images/G/01/abis-ui/buttons/go._V187564664_.gif" border="0">

这是我尝试过的:

Func GetButtons()
    Local $oBtns = _IETagNameGetCollection($g_oIE, "span")
    For $oBtn In $oBtns
        If String($oBtn.classname) = "action-go" Then
            _IEAction($oBtn, "click")
        EndIf
        ExitLoop
Next
EndFunc

行之有效的解决方案

Func ClickButton()
$HWND = _IEPropertyGet($g_oIE, 'HWnd')
WinSetState($HWND, "", @SW_MAXIMIZE)
_IEAction($g_oIE,"visible")
_IELoadWait($g_oIE)
MouseClick($MOUSE_CLICK_LEFT, 290, 354, 2)
EndFunc   ;==>GetButtons

我没有时间给你编写解决方案,但我可以告诉你我会怎么做。诀窍是不要单击按钮,而是单击其位置。这仅在 GUI 所有方式具有相同比例时才有效。

  1. 检测窗口的位置。只要它有一个名字,这应该可以工作。
  2. 通过使用 AutoIt 窗口信息检测按钮相对于窗口的位置。
  3. 您添加这两个值并单击该位置。

您可以使用鼠标单击单击位置。

相关文章: