爲什麼下面的代碼返回錯誤:page.injectJs不能與節點幻影工作
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();
});
});
});
});
});
});
您是否嘗試過使用'jQuery',而不是'$'? – dcodesmith
@dcodesmith是的,同樣的錯誤。 – codecowboy
檢查注射時是否有錯誤。 'page.injectJs('http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js',function(err){console.log(err)}' – dcodesmith