为什么以下代码会返回错误:
phantom stdout: ReferenceError: Can't find variable: $
我正在将jQuery注入页面并尝试查找选择器:
以下更新代码(见评论)
portscanner.findAPortNotInUse(startPort, 60000, 'localhost', function(err, freeport) {
if(err) {
//console.log(err);
}
console.log(freeport);
phantom.create({'port': freeport}, function(ph){
return ph.createPage(function(page) {
return page.open("http://www.targetsite.com/showpost.php?p="+posts[index].post_id, function(status) {
console.log("opened post? ", status);
var post_id = posts[index].post_id;
page.includeJs('http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js',function(err, post_id){
console.log(err);
return page.evaluate(function(post_id){
return $('#post_message_'+post_id); //undefined
},function(result){
console.log(result);
return ph.exit();
});
});
});
});
});
});
答案 0 :(得分:1)
试试这个
return page.evaluate(function(post_id){
return $('#post_message_'+post_id); //undefined
},function(result){
console.log(result);
return ph.exit();
}, post_id);
BTW哪个节点模块正在使用它?