Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CasperJS jQuery事件处理不起作用_Jquery_Events_Casperjs - Fatal编程技术网

CasperJS jQuery事件处理不起作用

CasperJS jQuery事件处理不起作用,jquery,events,casperjs,Jquery,Events,Casperjs,我有一个CasperJS JQuery事件处理的简单示例,它不起作用,我从来没有看到过 * page event received*********** 印刷品。相反,我看到了下面的日志 [error] [phantom] Wait timeout of 20000ms expired, exiting. Wait timeout of 20000ms expired, exiting. 我错过什么了吗 我正在使用CasperJS 1.0.2 eventtest.html <!doct

我有一个CasperJS JQuery事件处理的简单示例,它不起作用,我从来没有看到过

* page event received***********
印刷品。相反,我看到了下面的日志

[error] [phantom] Wait timeout of 20000ms expired, exiting.
Wait timeout of 20000ms expired, exiting.
我错过什么了吗

我正在使用CasperJS 1.0.2

eventtest.html

<!doctype html>
<html lang="en">
<head>
  <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
</head>
<body>
<div>Event test for CasperJS</div>

<script>

setTimeout(function(){ $(document).trigger("pageRendered");}, 5000)

 /*
 $(document).on("pageRendered",  function(){
    //window.__pageRendered_triggered__ = true;
    //alert("page loaded triggered");
    console.log("page loaded triggered");
 });*/

</script>

</body>
</html>

将evaluate更改为thenEvaluate修复了这个问题,显然,在绑定事件之前必须确保JQuery已加载


您正在使用哪个版本的phantomjs?phantomjs版本:1.9.1typo和ident现已修复
var casper = require('casper').create({
    verbose: true,
    logLevel: "debug",
    viewportSize: { 
        width: 1024, //970, 
        height: 768 // 3074
        },
    waitTimeout: 10000
});

casper.start('http://localhost/jqueryev.html', function() {});

casper.waitFor(function () {
    return this.evaluate(function testForJQuery() {
        return typeof(window.$) !== 'undefined';
    });
}, function then() {
     this.echo('*      [event] jquery loaded');
});

casper.evaluate(function() {
    // this fails...
    $(document).on('pageRendered', function() {
         window.__pageRendered_triggered__ = true;
    });
});

casper.waitFor(function() {
    return this.evaluate(function() {
        return window.__pageRendered_triggered__ === true;
    })===true;
}, function then() {
    console.log("*     page event received***********");
});

casper.run();
casper.thenEvaluate(function() {
  $(document).on('pageRendered', function() {
     window.__pageRendered_triggered__ = true;
  });
});