WebBrowser1.Navigate("www.teenspot.com/profiles/" & ListBox.SelectedItem & "/add")
ListBox.SelectedIndex = ListBox.SelectedIndex + 2
' This is the "sleep" function.
' This makes your webbrowser finish loading before new action.
Do Until WebBrowser1.ReadyState = WebBrowserReadyState.Complete And WebBrowser1.IsBusy = False
Application.DoEvents()
Loop
WebBrowser1.Document.GetElementById("confirm").InvokeMember("click")
我已经多次尝试使用do ... loop和for..next以及所有那些东西,但我仍然没有想到它。它的作用是,它只运行添加我的页面,而不是点击确认哪个是第二部分。我有点新的vb所以,如果有人可以帮助我真的很感激它
答案 0 :(得分:0)
回答这个问题:
问题是我需要知道如何循环这样它只是继续向下移动列表自动添加人
要使用一个按钮添加列表中的所有朋友,请单击:
使用 For Each / Next
For Each item As String In ListBox1.Items
WebBrowser1.Navigate("www.teenspot.com/profiles/" & item & "/add")
Do Until WebBrowser1.ReadyState = Complete And WebBrowser1.IsBusy=False
Application.DoEvents()
Loop
WebBrowser1.Document.GetElementById("confirm").InvokeMember("click")
Next
要仅添加所选的朋友,然后将所选的列表项向下移动一步以等待新的按钮点击,请执行以下操作:
If Not ListBox1.SelectedItem Is Nothing Then
WebBrowser1.Navigate("www.teenspot.com/profiles/" & ListBox1.SelectedItem.ToString & "/add")
If Not ListBox1.SelectedIndex = ListBox1.Items.Count - 1 Then ListBox1.SelectedIndex += 1
Do Until WebBrowser1.ReadyState = Complete And WebBrowser1.IsBusy=False
Application.DoEvents()
Loop
WebBrowser1.Document.GetElementById("confirm").InvokeMember("click")
End If
为此:
它只会通过添加我的页面运行,而不会点击确认哪个是第二部分。
我们必须知道如何编写HTML文档来研究它,是否有“确认”javascript-click-event的元素,还是只是一个post-form-button?我无法登录到网站,无法检查。 (而且我不是青少年所以我不会在那里创建一个帐户); - )
但是,我应该能够在没有InvokeMember的情况下执行点击。像这样:
WebBrowser1.Document.GetElementById("confirm").click()
我不是百分百肯定,但我想我之前就是这么做的。 如果按钮有一个像click =“AddFriend()”这样的javascript,也许你可以使用invokescript直接调用该函数而不是单击按钮,如下所示:
WebBrowser1.Document.InvokeScript("AddFriend()")