How Do I use jQuery in CasperJS?

被刻印的时光 ゝ 提交于 2019-11-26 20:10:19

问题


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: Can't find variable: $

What do I do? I've tried this too when creating the casper instance:

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']
});

回答1:


You have evaluate the jQuery code in the browser context using casper.evaluate

execute code as if you were using the browser console.

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



回答2:


Download the library then add its path using the clientScripts option:

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

And you are good to go with $(selector).



来源:https://stackoverflow.com/questions/17860928/how-do-i-use-jquery-in-casperjs

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!