我有以下代码,当我像这样运行时
phantomjs test-script.js http://phantomjs.org
我得到了“SyntaxError:Parse Error”的错误。我对javascript很新,没有行号,错误我就丢失了。这是代码
var args = require('system').args;
var url = "";
args.forEach(function(arg, i) {
url = arg;
});
var page = require('webpage').create();
var pageLoaded = function({
page.open(url, function (status) {
if (status !== 'success') {
console.log('Unable to access network');
} else {
page.includeJs("http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js", function() {
var data = page.evaluate(function() {
return $("body").html();
});
var title = page.evaluate(function () {
return document.title;
});
console.log('<title>' + title + '</title>');
console.log(data);
page.close();
phantom.exit();
});
}
});
});
var try_to = function() {
setTimeout(pageLoaded, 1000);
};
try_to();
我看了PhantomJS sometimes gives "parse error" messages和getting more information from phantomjs "SyntaxError: Parse error" message没有给我更多调试信息。我检查了多个网站,但没有收到第一个链接中提到的gzip问题。我认为这是代码的东西。好像我删除了try_to()函数,一切正常。
答案 0 :(得分:2)
将js复制并粘贴到jslint,我只是尝试了它,发现了许多错误,有些是微不足道的,但有些是重要的。您在启动器的页面加载功能上缺少a)。
答案 1 :(得分:0)
使用在线JavaScript验证程序,例如http://esprima.org/demo/validate.html。