javascript – 使用casperjs处理jquery事件
作者:互联网
我有一个网页,在加载dom后,javascript继续在页面上运行并在页面上添加元素.在运行所有javascript之后,我触发了一个jquery事件page.loaded,以便在运行所有我的javascripts之后对页面上的组件感兴趣可以这样做.
我试图使用casperjs / phantomjs自动测试这个网页,我想在jQuery页面加载事件被触发后才检查页面上的元素.我该怎么做呢?
解决方法:
查看waitFor系列函数,以便等待页面环境中发生的事情.您可以等待DOM中的some element或text,也可以直接添加特定的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