0

我有一个带有脚本标签的 Grails 视图,如下所示:

<script type="text/javascript">

        /* the first setInterval */
    setInterval(
      function()
      {
        console.log("Test...");
      },
      5000
    );

    setInterval(
      function()
      {
        console.log("Test... (2)");
      },
      5000
    );

    GetContent(1);
    GetContent(2);
    GetContent(3);
    GetContent(4);

    setInterval(
      Test0,
      5000
    );

    setInterval(
      Test2,
      5000
    );

    setInterval(
      ShowTime,
      1000 * 10
    );

    setInterval(
      Test3,
      1000 * 9
    );

    setInterval(
      Test1,
      1000 * 8
    );

</script>

我想知道,为什么第一个 setInterval 从未执行?不知何故,第一个 javascript 函数调用从未执行。函数调用显示在 html(查看源代码)中,但从未执行。

如果我复制第一个 setInterval 并将其粘贴到第一个下方,那么我有 2 个相同的函数调用,只有一个被执行。

控制台每 5000 毫秒只写一次“测试...”。

这是Grails中的错误吗?

4

1 回答 1

0

我的问题的答案只是将这些 javascript 函数调用绑定到文档的就绪事件。

<script type="text/javascript">


$(document).ready(
  function()
  {

    /* the first setInterval */
    setInterval(
      function()
      {
        console.log("Test...");
      },
      5000
    );

    setInterval(
      function()
      {
        console.log("Test... (2)");
      },
      5000
    );

    GetContent(1);
    GetContent(2);
    GetContent(3);
    GetContent(4);

    setInterval(
      Test0,
      5000
    );

    setInterval(
      Test2,
      5000
    );

    setInterval(
      ShowTime,
      1000 * 10
    );

    setInterval(
      Test3,
      1000 * 9
    );

    setInterval(
      Test1,
      1000 * 8
    );

  };

</script>

现在,一切都按预期执行。

于 2013-06-12T01:49:51.880 回答