【发布时间】:2020-02-29 11:03:44
【问题描述】:
我是新来的。当我尝试使用 casperjs.evaluate() 执行 JS 时,我发现事件没有执行。 像
这样的代码 casper = require("casper").create();
casper.start("https://www.google.com/",function(){
this.echo(this.getTitle());
this.wait(1000);
this.capture("homepage.png")
});
casper.then(function(){
this.evaluate(function(){
document.getElementsByClassName("gLFyf gsfi").value = "google"
})
this.echo(this.getTitle())
this.wait(1000)
this.capture("input.png")
});
casper.then(function(){
var tmp = this.evaluate(function(){
document.getElementsByClassName('gNO89b')[1].click();
});
this.echo(this.getTitle())
casper.wait(1000);
casper.capture("searchList.png");
});
casper.run();
“value”和“click”之类的事件应该在我的预期中执行,所以“searchList.png”应该显示“google”的所有搜索结果,但实际上我什么也没得到。 顺便说一句,我确定“评估”功能中的 JS 是正确的。
谁能帮我告诉我为什么会这样?提前致谢!
【问题讨论】:
标签: javascript casperjs evaluate