我如何在CasperJS中使用jQuery?

时间:2013-07-25 14:30:19

标签: javascript jquery casperjs

casper.start(URL, function() {

    casper.page.injectJs('C:/Users/Mike/Documents/n1k0-casperjs-bc0da16/jquery-1.10.2.min.js');
    var names = $('span.author-name');
    this.echo(names);
    this.exit();
}

ReferenceError:找不到变量:$

我该怎么办?我在创建casper实例时也试过这个:

var casper = require('casper').create({

    // I've tried both commented lines below

    // clientScripts: ['C:/Users/Mike/Documents/n1k0-casperjs-bc0da16/jquery-1.10.2.min.js']
    // clientScripts: ['includes/jquery-1.10.2.min.js']
});

2 个答案:

答案 0 :(得分:37)

您已使用 casper.evaluate

在浏览器上下文中评估jQuery代码
  

执行代码,就像使用浏览器控制台一样。

var nameCount = this.evaluate(function() {
    var names = $('span.author-name')
    return names.length;
});
this.echo(nameCount);

答案 1 :(得分:0)

下载该库,然后使用clientScripts选项添加其路径:

var casper = require("casper").create({
    clientScripts:  [
        'path/jquery-3.3.1.min.js'
    ]
});

您最好选择$(选择器)。