作者:JUN-围脖 | 来源:互联网 | 2023-05-18 04:32
打开某个网页:
ole_1.object.Navigate("http://www.sound-net.com", '', '', '', '')
当然如果你要做更加复杂的工作,这些是不够的
---------------------------------------------------------------
如果你对Javascript,dhtml熟悉的话,对下边很容易理解:
通过pb中的browser 可以看到浏览器控件中有个对象ole_1.object.document.相当于网页中的document对象,由此可以在pb中得到和操纵许多document的属性,甚至还可以利用Document.parentWindow得到一些window对象的属性,
例如:
ole_1.object.Document.parentWindow.image2.value
如果要触发某个控件(id 为image4)的click事件
ole_1.object.Document.parentWindow.image4.click()
ole_1.object.document.forms.length 来得到有几个form
ole_1.object.document.forms[0].name 得到名称
ole_1.object.document.forms[0].submit() 根据名称提交
ole_1.object.document.forms[i].Submit.click()
遍历font的tag:
oleobject ole_all,ole_font
ole_all= ole_1.object.document.body.all
ole_font =ole_all.tags("FONT")
messagebox("",integer(ole_font.length))
改变网页背景色:
ole_1.object.Document.body.background=""
ole_1.object.Document.body.bgcolor=rgb(rand(255),rand(255),rand(255))
得到网页源码
ls = ole_1.object.document.documentElement.outerHTML
前进,后退:
ole_1.object.GoBack()
ole_1.object.GoForward()
或者:
ole_1.object.document.parentWindow.history.back()
ole_1.object.document.parentWindow.history.forward()
怎么相应点击网页的事件?
在clicked事件中加入:
ls_tagName=ole_1.object.document.activeElement.tagName
if upper(trim(ls_tagName))="A" then //同理可以对INPUT等响应
ls_name = ole_1.object.document.activeElement.id
ls_a=ole_1.object.Document.activeElement.href
//然后在这里根据链接的id或者href choosecase
CHOOSE CASE ls_name
CASE "A_test"
//do something
END CHOOSE
end if
怎么查找网页中document对象属性?
最好的办法就是用我们的pb8,新建web target,加入并且打开一个网页,在左边tab页选中page-〉client side,从树中就可以查到网页中document对象的属性方法,直接copy下来修改修改就可以用了。
//===================================================================
百度:
输入搜索
ole_webBrowser.object.Document.GetElementById("kw").InnerText ="youzhi1007"
点击按钮
ole_webBrowser.object.Document.GetElementById("sb").click
google
ole_webBrowser.object.Document.GetElementsByName("q").item(0).SetAttribute("value", "youzhi1007")
ole_webBrowser.object.Document.GetElementsByname("btnG").item(0).click