1

そのように実行すると、次のコードがあります

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を見て、 「解析エラー」メッセージが表示されることがあり、phantomjs から詳細情報を取得する「SyntaxError: 解析エラー」メッセージも、デバッグするための詳細情報を提供してくれません。複数のサイトをチェックしましたが、最初のリンクに記載されている gzip の問題が発生していません。私はそれがコードの何かだと思います。try_to() 関数を削除したかのように、すべてが機能します。

4

2 に答える 2

2

その js をコピーしてjslintに貼り付けます。試してみたところ、多くのエラーが見つかりました。些細なものもあれば、重大なものもあります。初心者向けのページロード機能に ) がありません。

于 2013-03-11T03:41:26.657 に答える
0

http://esprima.org/demo/validate.htmlなどのオンライン JavaScript バリデーターを使用します。

于 2013-03-11T04:00:04.110 に答える