UDF > IE >


_IEDocInsertText

Ins�re du texte dans un �l�ment ou autour d'un �l�ment

#include <IE.au3>
_IEDocInsertText ( ByRef $oObject, $sString [, $sWhere = "beforeend"] )

Param�tres

$oObject Variable objet qui pointe sur un �l�ment du document.
$sString La cha�ne de caract�res contenant le texte � ins�rer.
$sWhere [optionnel] Sp�cifie le point d'insertion de la cha�ne:
    "beforebegin" = Ins�re la cha�ne imm�diatement avant l'objet.
    "afterbegin" = Ins�re la cha�ne apr�s le d�but de l'objet mais avant tout autre contenu dans l'objet.
    "beforeend" = (par d�faut) Ins�re la cha�ne imm�diatement avant la fin de l'objet, mais apr�s tout autre contenu dans l'objet.
    "AfterEnd" = Ins�re la cha�ne imm�diatement apr�s la fin de l'objet.

Valeur de retour

Succ�s: Retourne 1.
�chec: Retourne 0 et d�finit @error <> 0.
@error: 2 ($_IEStatus_COMError) - Erreur COM dans la r�f�rence d'un objet
3 ($_IEStatus_InvalidDataType) - Type de donn�e invalide
4 ($_IEStatus_InvalidObjectType) - Type d'objet invalide
5 ($_IEStatus_InvalidValue) - Valeur invalide
@extended: Contient le nombre de param�tres invalides

Remarque

Dans le texte � ins�rer il y a des balises HTML, elles sont d'abord convertis afin qu'elles s'affichent sous forme de texte.
Les caract�ristiques innerHTML, outerHTML, innerText et outerText de _IEPropertySet() peuvent �tre utilis�es pour manipuler dynamiquement le contenu ins�r�.

En relation

_IEBodyReadHTML, _IEBodyWriteHTML, _IEDocInsertHTML, _IEDocReadHTML, _IEHeadInsertEventScript, _IEPropertyGet, _IEPropertySet

Exemple

Exemple 1

; Ouvre un navigateur avec la page exemple basique, ins�re du texte
; dans et autour la premi�re balise Paragraph et affiche Body 

#include <IE.au3>
#include <MsgBoxConstants.au3>

Local $oIE = _IE_Example("basic")
Local $oP = _IETagNameGetCollection($oIE, "p", 0)

_IEDocInsertText($oP, "(Text beforebegin)", "beforebegin")
_IEDocInsertText($oP, "(Text afterbegin)", "afterbegin")
_IEDocInsertText($oP, "(Text beforeend)", "beforeend")
_IEDocInsertText($oP, "(Text afterend)", "afterend")

MsgBox($MB_SYSTEMMODAL, "Body", _IEBodyReadHTML($oIE) & @CRLF)

Exemple 2

; Ins�re de l'HTML au d�but et � la fin du document

#include <IE.au3>

Local $oIE = _IE_Example("basic")
Local $oBody = _IETagNameGetCollection($oIE, "body", 0)
_IEDocInsertText($oBody, "This Text is inserted After Begin", "afterbegin")
_IEDocInsertText($oBody, "Notice that <b>Tags</b> are <encoded> before display", "beforeend")

Exemple 3

; Exemple avanc�
; Ins�re une horloge et une cha�ne de r�f�rence en haut de chaque page, m�me quand vous
; naviguez vers un nouveau site. Utilisez les fonctions _IEDocInsertText, _IEDocInsertHTML et
; _IEPropertySet de "innerhtml" and "referrer"

#include <IE.au3>

Global $g_oIE = _IECreate("http://www.autoitscript.com")

AdlibRegister("UpdateStop", 1000) ; Mise � jour de l'horloge une fois par seconde

Global $bStop = False
While Not $bStop
    Sleep(10000)
WEnd
Exit

Func UpdateStop()
    ; Met � jour aussi longtemps que la fen�tre du navigateur existe
    $bStop = Not WinExists(_IEPropertyGet($g_oIE, "hwnd")) 
    If Not $bStop Then UpdateClock()
EndFunc   ;==>UpdateStop

Func UpdateClock()
    Local $sCurTime = "<font color=red><b>Heure courante : </b>" & @HOUR & ":" & @MIN & ":" & @SEC & "</font>"
    ; _IEGetObjById devrait retourner une erreur NoMatch apr�s navigation
    ;   (avant que DIV soit ins�r�), aussi d�sactive temporairement les notification
    _IEErrorNotify(False)
    Local $oAutoItClock = _IEGetObjById($g_oIE, "AutoItClock")
    If Not IsObj($oAutoItClock) Then ; Ins�re l'�l�ment DIV s'il n'a pas �t� trouv�
        ; 
        ; Obtient une r�f�rence sur BODY, ins�re DIV, obtient une r�f�rence sur DIV, met � jour l'horloge
        Local $oBody = _IETagNameGetCollection($g_oIE, "body", 0)
        _IEDocInsertHTML($oBody, "<div id='AutoItClock'></div>", "afterbegin")
        $oAutoItClock = _IEGetObjById($g_oIE, "AutoItClock")
        _IEPropertySet($oAutoItClock, "innerhtml", $sCurTime)
        ; 
        ; Teste la cha�ne de r�f�rence, si elle n'est pas vide l'ins�re apr�s l'horloge
        _IELoadWait($g_oIE)
        Local $sReferrer = _IEPropertyGet($g_oIE, "referrer")
        If $sReferrer Then _IEDocInsertText($oAutoItClock, _
                "  Referred by: <font color=red>" & $sReferrer & "</font>", "afterend")
    Else
        _IEPropertySet($oAutoItClock, "innerhtml", $sCurTime) ; Met � jour l'horloge
    EndIf
    _IEErrorNotify(True)
EndFunc   ;==>UpdateClock