Javascript Jquery设置计数器,但在调用函数时重置

Javascript Jquery设置计数器,但在调用函数时重置,javascript,jquery,timer,settimeout,setinterval,Javascript,Jquery,Timer,Settimeout,Setinterval,有人知道在下面的场景中最好使用什么函数吗 当一首歌开始播放时,我想启动一个秒表,以秒计 在任何时候,我都希望能够调用此变量,例如您单击的按钮将执行alert(time)并显示计时器上的计数 但是,当我运行一个函数时,reset-timer()我希望所有这些都重置并重新开始计数 我在考虑设置超时或设置间隔,但不确定哪一个是正确的 谢谢:)以下是一个让您开始学习的基本概念: 逻辑是:将全局变量设置为new Date(),以表示开始时间。在间隔(或超时)上,获取当前的新日期(),并从中减去开始时间。

有人知道在下面的场景中最好使用什么函数吗

当一首歌开始播放时,我想启动一个秒表,以秒计

在任何时候,我都希望能够调用此变量,例如您单击的按钮将执行
alert(time)
并显示计时器上的计数

但是,当我运行一个函数时,
reset-timer()我希望所有这些都重置并重新开始计数

我在考虑设置超时或设置间隔,但不确定哪一个是正确的


谢谢:)

以下是一个让您开始学习的基本概念:

逻辑是:将全局变量设置为
new Date()
,以表示开始时间。在间隔(或超时)上,获取当前的
新日期()
,并从中减去开始时间。这将以毫秒为单位显示差异。然后,您可以使用这些数据更新您想要的任何UI元素


要“重置”计时器,只需使用
新日期()将开始时间设置为当前时间即可。

以下是一个基本概念:

逻辑是:将全局变量设置为
new Date()
,以表示开始时间。在间隔(或超时)上,获取当前的
新日期()
,并从中减去开始时间。这将以毫秒为单位显示差异。然后,您可以使用这些数据更新您想要的任何UI元素


要“重置”计时器,只需使用
new Date()

将开始时间设置为当前时间,您到底需要什么,是计数和显示时间的代码,还是重置计数器的代码?您的帖子不清楚。setTimeout或setInterval可能是正确的。如果你不需要更新,你甚至不需要时间间隔。给出一些你想要发生的事情的伪代码。记录开始时间。使用setInterval显示差异。如果需要,请重置开始时间。您到底需要什么,计数和显示时间的代码,或重置计数器的代码?您的帖子不清楚。setTimeout或setInterval可能是正确的。如果你不需要更新,你甚至不需要时间间隔。给出一些你想要发生的事情的伪代码。记录开始时间。使用setInterval显示差异。如果需要的话,可以重置开始时间。如果你想也有分钟,jquery有一些非常简单的方法来跟踪分钟数!这太棒了,正是我想要的!现在是setInterval..我将插入此代码,几分钟后给您打勾@TMP你有链接吗?链接是,但是Shmidty的例子非常好,你要做的就是除以60得到分钟,剩下的可以停留几秒钟。哦,这只是简单的js版本,我不记得我用的是这个版本还是有一个jquery如果你想有分钟太多jquery有一些非常简单的方法来记录分钟数!这太棒了,正是我想要的!现在是setInterval..我将插入此代码,几分钟后给您打勾@TMP你有链接吗?链接是,但是Shmidty的例子非常好,你要做的就是除以60得到分钟,剩下的可以停留几秒钟。哦,这只是简单的js版本,我不记得我用的是js版本还是jquery版本
var startTime = new Date();

function SetTime(){
    var curTime = new Date();

    var seconds = Math.round((curTime - startTime) / 1000) + " second(s)";
    document.getElementById("timer").innerHTML = seconds;
}


var interval = setInterval(SetTime, 1000);

function ResetTime(){
    document.getElementById("timer").innerHTML = "0 second(s)";
    startTime = new Date();
}
​