HTML页面的脚本如下:
<script src="/_res/js/jquery.js" type="text/javascript"></script>
<script src="/WebResource.axd?d=5At4BVuSsWGYDY9lb87tCvy" type="text/javascript"></script>
在onResourceRecevied
函数上,我可以看到上面的脚本已成功下载。
然后我将它们注入page
:
page.injectJs('/_res/js/jquery.js').then(async function(res) {
console.log("injectJs")
page.injectJs('/WebResource.axd?d=5At4BVuSsWGYDY9lb87tCvy').then(async function(res) {
console.log("injectJs")
})
})
控制台记录了“injectJs”但我无法调用该脚本文件上的任何函数。
我注入了错误的路径文件,或者我必须使用includeJs
?
由于
=====================
更新
我想更新我的问题的更多细节:
我想对其执行操作的页面的HTML代码:
<script src="/WebResource.axd?d=abc" type="text/javascript"></script>
<a id=btnNext" href="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("btnNext", "", true, ""))">
<span><span>Next</span></span>
我想从HTML中嵌入的脚本(来自btnNext
)
WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("btnNext", "", true, ""))
功能的按钮/WebResource.axd?d=abc
的操作
这是我的代码:
page.injectJs('./WebResource.axd?d=abc')
.then(async function(res) {
console.log("injectJs")
//Next button click
await page.evaluate(function () {
WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("btnNext", "", true, ""))
});
})
结果不是预期的,我的代码不会触发该功能。