Javascript 如何在CasperJS onWaitTimeout事件处理程序中回显缺少的选择器?

Javascript 如何在CasperJS onWaitTimeout事件处理程序中回显缺少的选择器?,javascript,events,event-handling,wait,casperjs,Javascript,Events,Event Handling,Wait,Casperjs,我的脚本中有许多casper.waitForSelector部分。不管怎样,我想知道它什么时候超时。因此,我补充说: casper.options.onWaitTimeout = function() { //how to echo Selector which timed out here }; 此外,我想回应超时的选择器。的签名是: 遗憾的是没有正确的记录。传递到函数中的详细信息对象包含表示选择器的选择器属性。如果它是一个XPath选择器,则需要获取该选择器的path属性 casp

我的脚本中有许多
casper.waitForSelector
部分。不管怎样,我想知道它什么时候超时。因此,我补充说:

casper.options.onWaitTimeout = function() {
    //how to echo Selector which timed out here
};
此外,我想回应超时的选择器。

的签名是:

遗憾的是没有正确的记录。传递到函数中的
详细信息
对象包含表示选择器的
选择器
属性。如果它是一个XPath选择器,则需要获取该选择器的
path
属性

casper.options.onWaitTimeout = function(timeout, details) {
    var selector = details.selector.type === 'xpath' ? 
            details.selector.path : details.selector;
    this.echo("Wait timed out after " + timeout + " msec with selector: " + selector);
};
请注意,此函数将捕获所有等待超时,如果您选择退出,您必须自己退出脚本

查看源代码总是一个好主意:&

casper.options.onWaitTimeout = function(timeout, details) {
    var selector = details.selector.type === 'xpath' ? 
            details.selector.path : details.selector;
    this.echo("Wait timed out after " + timeout + " msec with selector: " + selector);
};