如何在CasperJS的弹出窗口中替换导航器对象?

时间:2015-04-03 21:04:57

标签: javascript phantomjs casperjs

如何更换弹出窗口中的导航器对象?

我可以使用page.initialized回调替换导航器,但它对弹出窗口无效。

在PhantomJS中,我可以使用这样的东西:

page.onPageCreated = function (newPage) {
  newPage.onInitialized = function () {
    newPage.evaluate(function() {
      window.navigator = {/*some code*/}
    });
  }
};

如何在CasperJS上做到这一点?

1 个答案:

答案 0 :(得分:0)

CasperJS建立在PhantomJS之上。如果它在PhantomJS中工作,那么它也可以在CasperJS中使用。

  1. 您可以直接访问casper.page以运行与PhantomJS相同的代码或

  2. 您可以使用popup.created事件处理程序在CasperJS中执行相同操作:

    casper.on("popup.created", function (newPage) {
      newPage.onInitialized = function () {
        newPage.evaluate(function() {
          window.navigator = {/*some code*/}
        });
      }
    });