代码之家  ›  专栏  ›  技术社区  ›  Jimmy

无法让函数工作者工作-停止javascript运行

  •  0
  • Jimmy  · 技术社区  · 7 年前

    <div id="number" style="font-size: 30px; font-weight: 600;">Loading...</div>
    
    <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
    <script>
    (function worker() {
            var data;
            $.ajax({
                type: 'POST',
                dataType: 'json',
                url: 'report.php',
                data: data,
                success: function (data) {
                $('#number').html(data.report.data[0].breakdown[0].counts)
                },
                complete: function() {
                    setTimeout(worker, 5000);
        }
            });
        });
    </script>
    

    显然它是有效的javascript,没有控制台错误。所以我不知道怎么诊断。

    1 回复  |  直到 7 年前
        1
  •  3
  •   Nikhil Aggarwal    7 年前

    你把衣服包好了 worker expression 但是,您从未调用它。你需要执行它。

    (function worker() {
            var data;
            $.ajax({
                type: 'POST',
                dataType: 'json',
                url: 'report.php',
                data: data,
                success: function (data) {
                $('#number').html(data.report.data[0].breakdown[0].counts)
                },
                complete: function() {
                    setTimeout(worker, 5000);
        }
            });
        })(); // <!--- execute your function
    <div id="number" style="font-size: 30px; font-weight: 600;">Loading...</div>
    
    <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>