Javascript 单击for循环中的事件| i值始终是最后一个值
我是CasperJS的初学者 我想循环检查ul的所有li,然后单击每个li。单击li时,会弹出一个模式,并保存模式数据。但循环中的“i”值始终是结束值Javascript 单击for循环中的事件| i值始终是最后一个值,javascript,phantomjs,casperjs,Javascript,Phantomjs,Casperjs,我是CasperJS的初学者 我想循环检查ul的所有li,然后单击每个li。单击li时,会弹出一个模式,并保存模式数据。但循环中的“i”值始终是结束值 我在ul有5个lis。 以下循环始终在第5个li上单击5次,并在单击第5个li时保存模式数据5次 casper.then(function() { a = lis.length; this.echo(a + ' lis found'); for(var i = 1; i <= a; i++ ) { this.echo(i
我在ul有5个lis。
以下循环始终在第5个li上单击5次,并在单击第5个li时保存模式数据5次
casper.then(function() {
a = lis.length;
this.echo(a + ' lis found');
for(var i = 1; i <= a; i++ ) {
this.echo(i + ' now');
this.click('.hello:nth-child('+ i +')' );
casper.waitUntilVisible('.modal__content ', function() {
console.log('Open Modal');
links = links.concat(this.evaluate(getLinks));
});
}
});
casper.then(函数(){
a=利斯长度;
this.echo(a+'lis-found');
对于(var i=1;i将单击更改为单击解决了问题:)
casper.then(函数(){
a=利斯长度;
this.echo(a+'lis-found');
对于(var i=1;i
casper.then(function() {
a = lis.length;
this.echo(a + ' lis found');
for(var i = 1; i <= a; i++ ) {
(function(i){ // Added this line
this.echo(i + ' now');
this.click('.hello:nth-child('+ i +')' );
casper.waitUntilVisible('.modal__content ', function() {
console.log('Open Modal');
links = links.concat(this.evaluate(getLinks));
});
})(i); // Added this line
}
});
casper.then(function() {
a = lis.length;
this.echo(a + ' lis found');
for(var i = 1; i <= a; i++ ) {
this.echo(i + ' now');
this.thenClick('.hello:nth-child('+ i +')' ); // Changed to thenClick from click
casper.waitUntilVisible('.modal__content ', function() {
console.log('Open Modal');
links = links.concat(this.evaluate(getLinks));
});
}
});