为javascript时钟添加时间

时间:2011-06-06 01:51:53

标签: javascript

我希望能够为javascript时钟添加指定时间并让它不断更新。我设法把下面的东西放在一起。

    function leadTimer(leadTime) 
    {
      var d1 = new Date (),
      d2 = new Date ( d1 );
      d2.setMinutes ( d1.getMinutes() + leadTime );
      currentHours = d2.getHours();
      currentMins = d2.getMinutes();
      // Choose either "AM" or "PM" as appropriate
      var timeOfDay = ( currentHours < 12 ) ? "AM" : "PM";
      // Convert the hours component to 12-hour format if needed
      currentHours = ( currentHours > 12 ) ? currentHours - 12 : currentHours;
      // Convert an hours component of "0" to "12"
      currentHours = ( currentHours == 0 ) ? 12 : currentHours;
      if (currentMins<=9) { currentMins="0"+currentMins; }
      if (currentHours<10) { currentHours="0"+currentHours; }
      $("#result").empty();
      $("#result").html(currentHours + ":" + currentMins + " " + timeOfDay)
      setInterval('leadTimer(leadTime)',10000)
}

我认为setInterval只会使用leadTime的当前值,但我只是得到一个错误,说leadTime未定义。

最终,我希望能够根据用户选择的内容来控制时间。

1 个答案:

答案 0 :(得分:5)

你几乎得到了它; the preferred way to use setInterval是给它一个函数作为第一个参数,所以请尝试将你的最后一行更改为:

setInterval(function(){leadTimer(leadTime)}, 10000);