如何通过 AHK 使用 IE 将按钮插入网页

How to insert a button into a web page using IE via AHK

我正在尝试使用 IE 和 AHK 在页面上的 div 中插入一个按钮。

这是我的:

SetTitleMatchMode, 2

wb := IEGet("Page1")
wb.document.all.external.innerText := "<input type=""button"" value=""Click Me!"" />"


IEGet(Name="")        ;Retrieve pointer to existing IE window/tab
{
    IfEqual, Name,, WinGetTitle, Name, ahk_class IEFrame
    {
        Name := ( Name="New Tab - Windows Internet Explorer" ) ? "about:Tabs" : RegExReplace( Name, " - (Windows|Microsoft) Internet Explorer" )
    }

    For wb in ComObjCreate( "Shell.Application" ).Windows
    {
        If ( wb.LocationName = Name ) && InStr( wb.FullName, "iexplore.exe" )
        {
            Return wb
        }
    }
}

div 的 ID 为 "external"。我正在使用 IE 11、Win 8.1 和 AHK 1.1.19.01。页面标题是"Page1".

当我运行上面的脚本时,我没有得到一个按钮,但是我得到了一个按钮的html(作为文本)。显然将 < 和 > 转换为相关实体。

如何获得按钮?

没关系 - 想通了。它更像是一个 IE DOM 问题而不是 AHK 问题。

这是如何完成的:

wb := IEGet("Page1")

inp := wb.document.createElement("input")
typ := wb.document.createAttribute("type")
typ.value := "button"
val := wb.document.createAttribute("value")
val.value := "Click Me!"
inp.setAttributeNode(typ)
inp.setAttributeNode(val)

wb.document.all.external.appendChild(inp)