webbrowser采集问题:网页有个iframe,比较占空间,请问有什么办法在打开网页的时候,不显示该iframe?就是说要他的宽和高为0
<div><iframe id="ifrmVendorBanner" frameBorder="0" width="0" scrolling="no" height="0" src="...." name="I2"></iframe></div>谢谢先

解决方案 »

  1.   

    那就直接访问你要采集的iframe就行了
      

  2.   

    不是要访问那个iframe,而是不想它显示出来占用空间,我想打开很多个窗口,那个iframe占用了空间,一个15寸的显示屏才开了6个窗口
    要是没有那个iframe,可以开10个另外,软件使用了键盘坐标模拟按键,所以不能最小化请教请教
      

  3.   

    http://topic.csdn.net/t/20040216/23/2741342.html
      

  4.   

    '引用 Microsoft HTML Object Library
    Option ExplicitPrivate Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
        Dim vDoc As MSHTML.HTMLDocument, vTag As MSHTML.IHTMLElement
        If URL = "http://..." Then 'iframe 的内容也会触发 DocumentComplete,最好过滤一下
            Set vDoc = WebBrowser1.Document
            For Each vTag In vDoc.All.tags("iframe")
                If vTag.Id = "ifrmVendorBanner" Then
                    'Call vTag.setAttribute("height", 0) '高度为 0 就看不到了
                    Exit Sub
                End If
            Next
        End If
    End Sub
      

  5.   

    我试了,老大,但是看不到效果
    要不您打开www.qunar.com,就是那个“机票搜索”按钮下面、“最近10分钟内特价机票”上面的那个图片占用的位置
    我要它不显示出来,就是说图下面的内容往上提,相当于那个图的高是0但是使用您的代码没有反应,请教请教,谢谢先
      

  6.   

    哪个图片?
    html 中没找到 <iframe id="ifrmVendorBanner"
      

  7.   

    谢谢老大指点!!
    那个图片是不是显示:“美国运通旅行支票” “安心之旅悠然自在”  “美国运通旅行支票有奖活动”(就是那个“机票搜索”按钮下面、“最近10分钟内特价机票”上面的那个图片占用的位置 )
    您要是复制那个图片到frontpage就可以看出iD了
      

  8.   

    这是按钮和后面的 Html
              <!--<img name="Submit" id="startSearchImg" onclick="startNewSearch(event)" src="http://source.qunar.com/site/images/new_main/Button.Search.gif" alt="搜索" title="搜索" />-->
              <input tabindex="7" class="Home_Button" name="Submit" type="button"  id="startSearchImg" value="机票搜索" />
            </div>
        </div> 
    </div>
    <div id="Home_Middle">
        <a href="#">
            <img id="himgDefaultAd" src="http://source.qunar.com/site/images/ads/loading_228x178.gif" />
            <iframe id="ifrmHomeMiddle" scrolling="no" frameborder="0" style="display:none;width:228px;height:178px;border:0px;overflow:hidden"></iframe>
        </a>
        <div class="Home_Middle_banner" style="border:5px solid #e3e3e3;background-color:#F0F0F0;text-align:left;line-height:24px;width:208px;">
            <iframe id="ifrmHomeMiddleFooter" src="" width="100%" height="50" frameborder="0" scrolling="no"></iframe>
        </div>
    </div>
    <img>是在<iframe>外面的,两个<iframe>的 id 也不是 "ifrmVendorBanner",请使用正确的标记和id。
      

  9.   

    惭愧
    请问:那还有什么办法不显示那个图,图下面的内容相应往上提升显示吗?
    另:好像那个id是变化的,奇怪,我复制到frontpage看到的是我那个id
    请教请教
      

  10.   

    只要使用不同的tag和id就可以了
            For Each vTag In vDoc.All.tags("img")
                If vTag.Id = "himgDefaultAd" Then
                    Call vTag.setAttribute("height", 0)
                    Exit Sub
                End If
            Next
      

  11.   

    谢谢Tiger_Zhao 老大!!!
    我测试没有反应,请问您有没有测试过?那个代码应该是:
            dim vdoc as object
           dim vtag as object     
           set vdoc=web1.document
            For Each vTag In vDoc.All.tags("img")
                If vTag.Id = "himgDefaultAd" Then
                    Call vTag.setAttribute("height", 0)
                    Exit Sub
                End If
            Next请教请教
      

  12.   

    我这里由于防火墙的关系,本来就看不到图片。
    你可以直接用 FrontPage 打开 www.qunar.com,确认一下你要隐藏内容到底属于什么?
    还可以在 For Each 循环内将所有的 vTag.Id 打印出来,是否与 FrontPage 中的内容一致。
      

  13.   

    <iframe id="ifrmVendorBanner" frameBorder="0" width="100%" scrolling="no" height="50" src="http://www.qunar.com/site/adframe/banner_flight_vendorList_new.htm?key=shenzhen&dc=nanjing&cnkey=%E5%8D%97%E4%BA%AC" name="I1">
    </iframe></div>我看到的是上面的代码
      

  14.   

    其实你可以将所有的 <iframe> 屏蔽起来,不管 id。
      

  15.   

    咋屏蔽?我使用您那个代码不能实现屏蔽的功能
    要是通过设IE安全级别,那就不行,因为有部分功能需要部分的iframe,我只要屏蔽指定的ifrmae请教请教,谢谢先