编程语言
首页 > 编程语言> > javascript – 使用casperjs处理jquery事件

javascript – 使用casperjs处理jquery事件

作者:互联网

我有一个网页,在加载dom后,javascript继续在页面上运行并在页面上添加元素.在运行所有javascript之后,我触发了一个jquery事件page.loaded,以便在运行所有我的javascripts之后对页面上的组件感兴趣可以这样做.

我试图使用casperjs / phantomjs自动测试这个网页,我想在jQuery页面加载事件被触发后才检查页面上的元素.我该怎么做呢?

解决方法:

查看waitFor系列函数,以便等待页面环境中发生的事情.您可以等待DOM中的some elementtext,也可以直接添加特定的jQuery侦听器以处理更多步骤:

casper.start('test.html', function() {
    this.evaluate(function() {
        $(document).on('site:loaded', function() {
            window.siteLoaded = true;
        });
    });
});

casper.waitFor(function() {
    return this.evaluate(function() {
        return window.siteLoaded === true;
    });
});

casper.then(function() {
    // process further
});

注意:这是factice伪代码,目的只是为了描绘概念.

标签:javascript,phantomjs,casperjs
来源: https://codeday.me/bug/20190729/1570281.html