停止然后在javascript中重新加载函数的执行

时间:2013-10-17 04:38:07

标签: javascript

我想使用一个像这样工作的函数:

  • 执行一次后将停止执行功能
  • 停止10秒后
  • 然后再从左侧位置开始执行。

你能帮我找到那个问题的解决方案吗?

4 个答案:

答案 0 :(得分:0)

您可以在javascript中设置计时事件

在JavaScript中计算事件非常容易。使用的两个关键方法是:

setInterval() - 以指定的时间间隔反复执行一个函数 setTimeout() - 在等待指定的毫秒数后执行一次函数

setInterval()方法 语法

window.setInterval("javascript function",milliseconds);

实施例

var myVar=setInterval(function(){myTimer()},1000);

function myTimer()
{
var d=new Date();
var t=d.toLocaleTimeString();
document.getElementById("demo").innerHTML=t;
}

答案 1 :(得分:0)

您可以使用returnWindow.setTimeout()的组合。

// The code will have to be told to restart, or not
var restart = true;

function exampleFunction()
{
    if (restart) {
        alert("Restarting function");

        // Start function again in 10 000 milliseconds.
        setTimeout(exampleFunction, 10000);

        // Tell function not to interrupt next time.
        restart = false;

        // Exit early.
        return;
    }

    alert("Function finished");
}

// Start the function
exampleFunction();

答案 2 :(得分:0)

假设你有function a()你想要做某些功能,然后因某种原因停止,然后继续。

第一种情景:在设定的时间后继续

function a() {
  // do stuff
  // time to stop executing has come
  setTimeout("b()", 10000);
}

function b() {
  // this function does what you wanted to continue doing after 10 seconds.
}

第二种情况:在用户事件后继续

var hasFiredEvent = false;

function a() {
  // do stuff
  // time to stop executing, until the user fires an event.
  setTimeout("b()", 500);
} 

function b() {
  if (!hasFiredEvent) {
    setTimeout("b()", 500);
  }
  else {
    // do the rest of the code you wanted.
  }
}

// some other code is required to set hasFiredEvent = true;

答案 3 :(得分:0)

试试这个:

setInterval 函数用于您并找到示例:

<script type="text/javascript">
    function CallTimer() {
        alert('test');
    }

    window.onload = startInterval;
    function startInterval() {
        CallTimer();
        setInterval(CallTimer, 100);
    }
</script>