Ich möchte die Funktion waitForUrl() von http://docs.casperjs.org/en/latest/modules/casper.html#waitforurl verwenden. Nachdem ein Login-Formular gesendet wurde, sollte casperjs warten, bis die nächste Seite geladen ist. In dem Code unten sehen Sie die "Zweite Variante", so versuche ich das zu programmieren und Sie sehen auch die aufgetretene Fehlermeldung. Die "Erste Variante" funktioniert und das Dashboard.png wird erfasst.Casperjs und waitForUrl(), um auf die nächste Seite zu warten
Kann jemand erklären, was mit der "zweiten Variante" nicht stimmt?
// ...
// Type and send login Form
casper.then(function() {
this.evaluate(function(){
$("username").value="admin";
$("password").value="pass#";
$("login").click();
});
});
// First variant (works) -----------------
// casper.then(function() {
// this.clickLabel('Dashboard', 'a');
// });
// Second variant (works not, error) -----------------
// casper.waitForUrl(/\/admin\/index\.php/,function() {
// this.clickLabel('Dashboard', 'a');
//});
// -> [error] [phantom] Wait timeout of 5000ms expired, exiting.
// -> Wait timeout of 5000ms expired, exiting.
casper.then(function(){
this.capture('./dashboard.png');
});
http://docs.casperjs.org/en/latest/modules/casper.html#waitforurl –
@Igor Ich habe diesen Link bereits in meiner Frage gepostet! Was ist falsch in meinem Code? Ich kann keine Unterschiede zwischen meinem Code und den Dokumenten sehen. –