【发布时间】:2015-09-24 21:57:49
【问题描述】:
有一个页面testkrok.org.ua 具有一致的参数选择。因此,我需要在 5 个相互依赖的选择框的每个选项上创建一系列 5 次点击。
document.querySelector('select.se1')[3]
document.querySelector('select.se2')[1]
document.querySelector('select.se3')[1]
document.querySelector('select.se4')[1]
document.querySelector('select.se5')[3]
重定向到带有测试的页面。
但是在第一次单击后拍摄的快照上没有出现第二个面板? 也许我没有击中元素?
var page = require('webpage').create();
page.open('https://testkrok.org.ua', function(status) {
console.log("Status: " + status);
if(status === "success") {
page.evaluate(function() {
var theEvent = document.createEvent("MouseEvent");
theEvent.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
var element = document.querySelector('select.se1')[3];
element.dispatchEvent(theEvent);
});
}
setTimeout( function() {
page.render('snapshot.png');
phantom.exit()
}, 5000);
});
【问题讨论】:
-
如果我理解正确,您想单击选择框选项。我不认为这些实际上是不可点击的。此外,您可能需要在点击后稍等片刻。
-
@ArtjomB。添加
setTimeout5 秒,但什么也没有
标签: javascript click phantomjs html-select