Simule un clic de souris sur un lien défini par la sous-chaîne de texte qui coïncide avec une chaîne donnée
#include <IE.au3>
_IELinkClickByText ( ByRef $oObject, $sLinkText [, $iIndex = 0 [, $iWait = 1]] )
$oObject | Variable objet InternetExplorer.Application, Window ou objet Frame |
$sLinkText | Le texte affiché sur la page Web dans le lien que vous désirez cliquer |
$iIndex | [optionnel] Si le texte du lien apparait plus d'une fois, spécifiez l'index, compté à partir de 0, de l'occurrence que vous souhaitez |
$iWait | [optionnel] Spécifie s'il faut attendre que la page soit chargée avant de retourner 0 = retourne immédiatement, sans attendre que la page soit chargée 1 = (par défaut) Attendre que le chargement de la page soit terminée avant de retourner |
Succès: | Aucun retour. |
Échec: | Retourne 0 ou -1 et définit @error <> 0. |
@error: | 1 ($_IEStatus_GeneralError) - Erreur générale 2 ($_IEStatus_COMError) - Erreur COM dans une référence d'objet 3 ($_IEStatus_InvalidDataType) - Type de donnée invalide 4 ($_IEStatus_InvalidObjectType) - Type d'objet invalide 6 ($_IEStatus_LoadWaitTimeout) - Délai de chargement dépassé 7 ($_IEStatus_NoMatch) - Pas de correspondance trouvée 8 ($_IEStatus_AccessIsDenied) - Accès refusé 9 ($_IEStatus_ClientDisconnected) - Client déconnecté |
@extended: | Contient le nombre de paramètres invalides |
Pas tous les éléments qui semblent avoir des liens en sont en réalité.
Il est de pratique courante d'attacher les événements onClick de JavaScript à d'autres éléments DOM pour simuler le comportement des liens.
Pour activer ces éléments, utilisez "click" avec _IEAction() .
_IELinkClickByIndex, _IELoadWait
; Ouvre une instance du navigateur avec l'exemple de base, clique sur le lien qui contient "user forum" #include <IE.au3> Local $oIE = _IE_Example("basic") _IELinkClickByText($oIE, "user forum")
; Ouvre une instance du navigateur avec la page d'accueil AutoIt, boucle sur les liens de la page ; et clique sur le lien qui contient le texte "overview" ; en recherchant la sous-chaîne. #include <IE.au3> Local $oIE = _IECreate("http://www.autoitscript.com") Local $sMyString = "overview" Local $oLinks = _IELinkGetCollection($oIE) For $oLink In $oLinks Local $sLinkText = _IEPropertyGet($oLink, "innerText") If StringInStr($sLinkText, $sMyString) Then _IEAction($oLink, "click") ExitLoop EndIf Next