当用户按下 'Esc' 键时关闭 HTA

Close an HTA when the user presses the 'Esc' key

我正在尝试捕获按键操作,以便在用户按下 Esc 键时关闭我的 HTA。

我已确认 onKeyUp 事件有效(我还捕获了输入的长度),并且下面的示例无效(通过添加未触发的 MsgBox ).

我在这里错过了什么?

Sub window_onKeyUp()

    If window.event.keyCode = 27 Then
        Call CloseHTA()
    End If

End Sub

这对我有用。

<script language="VBScript">
    Sub TestKey()
        intKeyCode = Window.Event.Keycode
        If intKeyCode = 27 Then Window.Close
    End Sub
</script>

<body onkeyup="TestKey">
</body>

编辑:

或者,如果您想在 <body> 标记之后包含您的代码,您可以使用 Document_OnKeyUp()

<body>
</body>

<script language="VBScript">
    Sub Document_OnKeyUp()
        intKeyCode = Window.Event.Keycode
        If intKeyCode = 27 Then Window.Close
    End Sub
</script>

你可以这样试试:

<html>
<script language="VBScript">
    Sub TestKey()
        intKeyCode = Window.Event.Keycode
        If intKeyCode = 27 Then Call CloseHTA()
    End Sub
    Sub CloseHTA()
        self.close
    End Sub
</script>

<body onkeyup="TestKey">
</body>
</html>