You cannot write Script event handlers for WebBrowser control events, such
as DocumentComplete, BeforeNavigate2, and other events, when you host the
WebBrowser control in an HTML page by using the OBJECT tag. These events are
not fired. These events are not fired even if the WebBrowser control is
wrapped in another ActiveX control and then embedded in HTML.
If the reason for hosting the WebBrowser control in an HTML page is to
display documents within your Web page, Microsoft recommends that you use the IFRAME tag.
Steps to Reproduce the Behavior
- Type and then save the following HTML as C:\Page1.htm:
<HTML>
<HEAD>
<TITLE>WebBrowser Control in HTML</TITLE>
</HEAD>
<BODY>
<SCRIPT LANGUAGE="VBScript">
Sub WebBrowser1_BeforeNavigate2(pDisp, URL, Flags, _
TargetFrameName, PostData, Headers, Cancel)
MsgBox "BeforeNavigate2"
end sub
Sub WebBrowser1_DocumentComplete(pDisp, URL)
MsgBox "DocumentComplete"
end sub
Sub Window_OnLoad()
WebBrowser1.Navigate "http://www.microsoft.com"
End Sub
</SCRIPT>
- Navigate to C:\Page1.htm from Internet Explorer 4.0.
DocumentComplete and BeforeNavigate2 events are not fired.