Javascript 打开页面并单击结果-Phantomjs

Javascript 打开页面并单击结果-Phantomjs,javascript,phantomjs,Javascript,Phantomjs,下面的phantomjs代码尝试打开站点并单击按钮: var page = require('webpage').create(); page.open('http://mysite/mypage.html', function() { page.includeJs("http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js", function() { page.evaluate(function() {

下面的phantomjs代码尝试打开站点并单击按钮:

var page = require('webpage').create();
page.open('http://mysite/mypage.html', function() {
  page.includeJs("http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js", function() {
    page.evaluate(function() {
        $("[name='SubmitForm']").click();

        window.setTimeout(function () {
            page.render('snap.png');
            phantom.exit();
        }, 6000); // Change timeout as required to allow sufficient time 

    });

  });
});
但是当我使用phantomjs test.js运行时,它永远不会返回

如何加载结果页

page.evaluate是sandoxed页面上下文。它无法访问外部定义的变量。所以,使用页面或幻影或需要在其内部是不可能的

只需将setTimeout块移到它之外