在我的HTA中,如果发生错误,我将其保持为打开状态,如果一切顺利,则关闭它。在开始时,我将sysmenu属性设置为no,因为我不希望用户在HTA完成之前关闭它。最后,我希望他们能够点击关闭按钮。以下是我输入的试图实现这一目标的内容,但它似乎不起作用?我怀疑我需要做些什么来让HTA刷新它的windows属性?
请注意,任何完全重新加载窗口和/或使脚本再次执行的解决方案都是不可接受的
If Not bHoldOpen Then
Call window.close
Else
Dim tagHTA
Set tagHTA = document.getElementsByTagName("hta:application").item(0)
Call tagHTA.setAttribute("sysmenu","yes")
End If发布于 2011-12-20 17:46:45
您不能在运行时更改它,它在HTA:块中唯一可用,因为它的值用于确定最初如何创建物理窗口。
我以为您可以使用onBeforeUnload事件生成一个警告&调用cancelBubble来中止关闭,但我在IE8中尝试了它,它似乎仍然被窃听;http://support.microsoft.com/kb/946214。
如果你只是在过程完成时解开一个“关闭”按钮,用户可能会更简单更容易理解。
https://stackoverflow.com/questions/8579228
复制相似问题