Private Sub Command3_Click()
Dim i As Integer
Dim vDoc, vTag1WebBrowser1.Navigate "http://www.baidu.com"While WebBrowser1.Busy
Wend
     
Set vDoc = WebBrowser1.DocumentFor i = 0 To vDoc.All.Length - 1    If UCase(vDoc.All(i).id) = "KW" Then
            vDoc.All(i).Value = "hello"
    End If    If UCase(vDoc.All(i).id) = "SU" Then
            vDoc.All(i).Click
            Exit For
    End If    Next i        
End Sub
单步调试的时候,有时候可以正常打开搜索hello页面,有些时候仍然在baidu首页。 连续执行就完全在百度首页。请问这是什么问题,多谢各路大侠指教!

解决方案 »

  1.   

    估计是没加载完,执行太快了吧。 我用一个按钮做navigator,等页面加载完后,再按这个按钮就正常了。大神们,我怎么知道什么时候可以获取documet的元素了呢
      

  2.   

    有个DocumentComplete事件吧,在那里试试
      

  3.   

    While WebBrowser1.Busy
    Wend
    最好修改为:
    Do
            DoEvents
    Loop Until WebBrowser1.ReadyState = READYSTATE_COMPLETE
      

  4.   

    DocumentComplete 会调用多次,勉强可用。多谢!