AutoIt 在 IE 中单击没有名称或 ID 的 onClick Javascript 按钮 class
AutoIt Clicking a onClick Javascript button with no name or id only class in IE
尝试编写一个按钮,点击亚马逊网站上的按钮,如下所示:
<span class="action-go" onclick="MYO.JS.handle_action($(this).parent().find('.action option:selected').attr('value'), $(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 始终具有相同的比例时才有效。
- 您检测到 window 的位置。只要它有一个名字,它就可以工作。
- 您通过使用 AutoIt Window 信息检测按钮相对于 window 的位置。
- 您添加两个值并单击该位置。
您可以使用MouseClick点击一个位置。
尝试编写一个按钮,点击亚马逊网站上的按钮,如下所示:
<span class="action-go" onclick="MYO.JS.handle_action($(this).parent().find('.action option:selected').attr('value'), $(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 始终具有相同的比例时才有效。
- 您检测到 window 的位置。只要它有一个名字,它就可以工作。
- 您通过使用 AutoIt Window 信息检测按钮相对于 window 的位置。
- 您添加两个值并单击该位置。
您可以使用MouseClick点击一个位置。