webbrowser打开一个页面,上面有4个iframe框架,其中只有一个是我需要用来操作的,其他三个不需要,而且加载很慢,但是判断的时候只能用pDisp Is webbrower1.Object来判断,很影响速度,有什么办法禁止其中的3个iframe下载加载?

解决方案 »

  1.   

    建议先使用inet控件获得该页面的HTML代码,然后分析HTML代码,删除与其它3个iFrame相关的代码,再把整理后的HTML传递给WebBrowser控件,此时由于路径问题,WebBrowser可能无法正确显示图片等内容(因为很多页面的图片使用了相对URL),你可以在分析整理代码的过程把所有相对URL改为绝对URL就行了。
    如果你给出该页面的HTML源代码,我可以给你示例程序。
      

  2.   

    由于iFrame控件是IE容器根据HTML代码动态加载的,在加载完成以前是无法禁止的,加载完成后禁止它意义又不大,最多是隐藏它,对速度还是不能提高,除非你能修改服务器上的源代码,否则楼主可以按我上面的思路进行,因为使用inet控件获得页面代码的时侯,没有对HTML代码进行分析和加载,故速度很快,即使加上自己分析代码所耗时间,也应该比其它3个iFrame控件从远程下载HTML并分析显示要快得多。
      

  3.   

    http://www.76543210.com/3d5b70cf97bfa171
    我想事先屏蔽这个页面的两个广告框
      

  4.   

    我前面已经说了,你加载某个HTML页面时,不能直接使用WebBrowser,而是使用Inet控件或winsock先把该网页的内容下载下来后,对HTML源代码进行分析,剔除或注释掉页面中广告框的代码,然后再加载给WebBrowser。
    至于如何获取一个网页的内容,网上有许多现成的源代码,你google一下即可。