是否可以在页面中传递变量.在我的情况下,我的情况如下?
function myFunction(webpage, arg1, arg2){
var page = require('webpage').create();
page.viewportSize = { width: 1920, height: 1080 };
page.open(webpage, function (status){
if (status == 'success') {
page.includeJs("http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js", function(){
page.evaluate(function(){
arg = arg1 + arg2;
console.log(arg);
});
});
}
else { phantom.exit(); }
});
}
Run Code Online (Sandbox Code Playgroud)
我尝试了在互联网上找到的几种方法,但实际上没有什么可以得到它的变量.
预先感谢您的帮助 :)
Ari*_*yat 68
像往常一样,答案在功能文档中明确说明evaluate:
从PhantomJS 1.6开始,JSON可序列化的参数可以传递给函数.在以下示例中,提取DOM元素的文本值.以下示例实现与前一示例相同的最终目标,但该元素是基于传递给evaluate调用的选择器选择的:
下面的示例演示了用法:
var title = page.evaluate(function(s) {
return document.querySelector(s).innerText;
}, 'title');
console.log(title);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
23534 次 |
| 最近记录: |