执行JS
命令说明
执行JS,返回JS执行结果(字符串格式)
命令原型
sRet = WebBrowser.RunJS(hWeb,sScript,bSync,optionArgs)
命令参数
参数 | 必选 | 类型 | 默认值 | 说明 |
---|---|---|---|---|
hWeb | True | expression | hWeb | 使用 WebBrowser.Create 或 WebBrowser.Bind 命令返回的浏览器句柄字符串 |
sScript | True | string | "function(){return 123}" | 要执行的JS脚本内容 |
bSync | True | boolean | True | 是否同步执行,传递为 true 则等待JS运行完成后才返回继续执行,传递为 false 则JS开始执行立即返回 |
bContinueOnError | False | boolean | False | 指定即使活动引发错误,自动化是否仍应继续。该字段仅支持布尔值(True,False)。默认值为False |
iDelayAfter | False | number | 300 | 执行活动后的延迟时间(以毫秒为单位)。默认时间为300毫秒 |
iDelayBefore | False | number | 200 | 活动开始执行任何操作之前的延迟时间(以毫秒为单位)。默认的时间量是200毫秒 |
返回结果
sRet,将命令运行后的结果赋值给此变量。
运行实例
/*********************************执行JS***************************************
命令原型:
WebBrowser.RunJS(hWeb,sScript,bSync,optionArgs)
入参:
hWeb--浏览器对象
sScript--JS脚本内容
bSync--是否同步执行
bContinueOnError--错误后是否继续
iDelayAfter--执行后延时
iDelayBefore--执行前延时
出参:
sRet --命令运行返回的结果
注意事项:
使用谷歌内核的浏览器首次使用需要安装扩展并启用扩展
需要打开浏览器后才能使用
*********************************************************************************/
Dim hWeb, sRet
//启动IE浏览器并打开百度首页
hWeb = WebBrowser.Create("ie","www.baidu.com",30000,{"bContinueOnError":false,"iDelayAfter":300,"iDelayBefore":200,"sBrowserPath":"","sStartArgs":""})
TracePrint(hWeb)
//运行js代码,返回js代码的返回值
sRet = WebBrowser.RunJS(hWeb,"function(){return document.getElementsByClassName('bg s_btn')}",true,{"bContinueOnError":false,"iDelayAfter":300,"iDelayBefore":200})
//在调试栏打印结果
TracePrint(sRet)