相关疑难解决方法(0)

从PhantomJS中调用变量调用injectJS

我已经按照从入门页面注入jQuery的示例,这很好用.我在同一目录中有一个jQuery的本地副本,并执行类似...

if(page.injectJs('jquery.min.js')) {
  page.evaluate(function(){
    //Use jQuery or $ 
  }
}
Run Code Online (Sandbox Code Playgroud)

当我尝试注入自己的脚本时,我没有任何函数可用.假设我有一个名为myScript.js的脚本

function doSomething() {
  // doing something...
}
Run Code Online (Sandbox Code Playgroud)

我不能再使用doSomething ...

if(page.injectJs('myScript.js')) {
  console.log('myScript injected... I think');
  page.evaluate(function() {
    doSomething();
  });
} else { 
  console.log('Failed to inject myScript'); 
}
Run Code Online (Sandbox Code Playgroud)

我试过了

window.doSomething = function() {};
Run Code Online (Sandbox Code Playgroud)

document.doSomething = function() {};
Run Code Online (Sandbox Code Playgroud)

同时没有运气,以及尝试在随后的page.evaluate()中使用window.doSomething()或document.doSomething()调用它们.

phantomjs

8
推荐指数
1
解决办法
8952
查看次数

标签 统计

phantomjs ×1