1.获取WebBrowser加载网页的内容
WebBrowser1.Document.getElementById("kw").Value = "VB编程"
WebBrowser1.Document.getElementById("f").submit '提交表单
2.往WebBrowser控件写入内容
WebBrowser1.Document.write str
3. 操作页面元素
for(i=0;i<document.getElementsByTagName.length;i++){
document.getElementsByTagName("input")[i].style.background="#CCCCCC";
}
2.webbrowser控件的DocumentComplete和DownloadComplete的区别
文档完全下载后,一个 DownloadComplete 事件就被引发。这并不一定表明可以通过对象模型安全地访问文档内容了。DocumentComplete 事件才表明所有的工作都已完成并且文档已经就绪。
DocumentComplete url请求的页面完成;当整个文档完成时激发,刷新页面不激发
DownloadComplete url中请求的下载完成;当某项下载操作已经完成后激发,刷新也可激发此事件
DownloadComplete 事件比 DocumentComplete 事件先触发
一个Document可能包括多个Download,例如Link的CSS、脚本和图片。多个框架的DownloadComplete 和DocumentComplete的触发并无指定的先后次序;但是可以根据DocumentComplete的参数判断是哪一个浏览器对象触发了事件(框架也是浏览器对象)
以下转自:http://blog.csdn.net/shanhe/archive/2005/08/11/451681.aspx ,更多内容浏览该页面
如你所知, Internet Explorer像其他COM对象一样激发事件—通过连接点.但实际上Internet Explorer如何激发事件呢?每次 Internet Explorer需要向客户提供关于当前活动状态的信息, Internet Explorer 激发通过DWebBrowserEvents2 连接点激发一个事件. (之前到版本 4, Internet Explorer 通过 DWebBrowserEvents 接口激发事件.但到了版本4.x 和5, Internet Explorer 通过 DWebBrowserEvents2 连接点.)
注意
如何领会到 Internet Explorer 加法那些事件 ? 最佳途径是 MSDN Online Web Workshop. 另外采用 OLE-COM Object Viewer
不像WebBrowser 控件 和 Internet Explorer的其他接口,是剑接口没有继承体系. DWebBrowserEvents 接口严格应用于Internet Explorer 3. 如果你正宿主WebBrowser 控件或者自动化Internet Explorer 5, 你可以通过此接口接收事件—但是不可挂接. DWebBrowserEvents2 接口包含的方法是为Internet Explorer 5定制的.用 DWebBrowserEvents2 替代DWebBrowserEvents ,你将有更多的控制能力. 所以不要忘记接口的最后面的2.
尽管DWebBrowserEvents2 是一个事件接口, 它其实就是像IWebBrowser2 一样的另外 COM 接口,所以它可以包含方法. (D 开头的命名是表示这是派遣接口.一个派遣接口是一个IDispatch 接口.但不同于普通接口, 派遣接口没有vtable.) 就像一个接口一样,派遣接口只不过提供一些函数的定义—他们并不真实实现.事件的实现由客户提供.举例来说,为了让WebBrowser 激发一个事件, 在DWebBrowserEvents2 接口中适当定义一些方法.这些方法由客户实现.但WebBrowser不直接调用这些方法.换句话讲, WebBrowser 并不调用DocumentComplete 方法.因为 DWebBrowserEvents2 是派遣接口, WebBrowser 通过IDispatch::Invoke 调用客户的实现. 早期, 当WebBrowser 调用客户的Invoke 实现, WebBrowser 传递事件被激发的DISPID.
注意
某些工具如 Visual Basic, MFC, 和 ATL 提供 Invoke 实现
表7-6 列出 WebBrowser 事件. (这些是WebBrowser 控件和Internet Explorer供有的事件,尽管有些事件仅仅用于自动化Internet Explorer).
注意
尽管有些方法为不包含 2 . 尽管 DWebBrowserEvents2 并非继承自 WebBrowserEvents , DWebBrowserEvents2 还是 匹配 DWebBrowserEvents 中被更改的,以免混淆。
注意表 7-6 重的参数有些值同样有 VARIANT_ TRUE 或 VARIANT_FALSE . 如果你使用Visual C++,确信分派使用这些值不要使用 TRUE 或 FALSE . 如果你使用Visual Basic, 它会自动帮助你转换,你可以比较True和False.
现在来仔细看看这些事件
Table 7-6 WebBrowser 事件
私有事件 |
描述 |
BeforeNavigate2 |
在导航之前发生 . ( 该事件并不在不刷新页面的时候发生 ) |
CommandStateChange |
当命令状态改变时发生 . 该事件告诉你何时使能或者禁止 Back 以及 Forward 菜单像或者按钮 . |
DocumentComplete |
当整个文档完全完成装载时发生 . 如果你刷新页面 , 此事件并不激发 . |
DownloadBegin |
当一个下载项目开始时候发生 ,此事件也在你刷新( IWebBrowser2::Refresh. )时发生 |
DownloadComplete |
党整个下载项目完成是发生该事件也发生在完成刷新页面 . |
NavigateComplete2 |
当整个导航完成 . 该事件对应于 BeforeNavigate2 . |
NewWindow2 |
在一个新的窗口被创建以显示 Web 页或者其他资源的时候发生。譬如你在页面中以新建窗口的方式打开一个连接 |
OnFullScreen |
当 FullScreen 属性被改变时候发生 . 此事件携带一个 VARIANT_ BOOL 类型的 输入参数指示 Internet Explorer 是否处于全屏( full-screen ) 模式 (VARIANT_TRUE ) 或者处于普通模式 (VARIANT_FALSE ). |
OnMenuBar |
菜单条 MenuBar 属性被改变的时候发生 . 一个 VARIANT_ BOOL 类型的 输入参数指 Internet Explorer 的菜单条属性是可见 (VARIANT_TRUE ) 或者隐藏 (VARIANT_ FALSE ). |
OnQuit |
当 Internet Explorer 正在退出时发生 . 该事件当用户关闭浏览器或者调用 Quit 方法 . |
OnStatusBar |
当 StatusBar 属性被改变的时候发生。事件携带 VARIANT_ BOOL 类型的输入参数 指示 Internet Explorer 的状态条是否可见 (VARIANT_TRUE ) 或者隐藏 (VARIANT_FALSE ). |
OnTheaterMode |
当 TheaterMode 属性被改变时发生 . 事件携带 VARIAN |