不能 clearInterval 然后触发另一个 setInterval
Cant clearInterval and then trigger another setInterval
我有一个用户列表,点击每个用户我得到一个不同的时间戳,我从中显示一个计时器,它被放置在一个 id #timer
的范围内
<span id="timer"></span>
这是正常工作的。
这是一个 jsfiddle。
jsfiddle
似乎 clearInterval(x);
并没有停止之前的定时器,而是启动了一个新的定时器,我明白了(同时有两个定时器)
我也尝试过使用 window.clearInterval(x);
但它也没有用。还尝试在 $(document).on('click', '.list', function()
内部和外部设置 var x
,但没有任何效果。
你有一个 shadowed x
这里:
var x;
$(document).on('click','#timer',function() {
var timestamp = localStorage.getItem("LivechatExpirationTime");
var countdown = new Date(timestamp).getTime();
//alert (countdown)
var x = setInterval(function () // <-- you redeclare x, so it's different from the first one
如果您只删除第二个 var
,它将按预期工作:
var x;
$(document).on('click','#timer',function() {
var timestamp = localStorage.getItem("LivechatExpirationTime");
var countdown = new Date(timestamp).getTime();
//alert (countdown)
x = setInterval(function ()
我有一个用户列表,点击每个用户我得到一个不同的时间戳,我从中显示一个计时器,它被放置在一个 id #timer
的范围内<span id="timer"></span>
这是正常工作的。
这是一个 jsfiddle。 jsfiddle
似乎 clearInterval(x);
并没有停止之前的定时器,而是启动了一个新的定时器,我明白了(同时有两个定时器)
我也尝试过使用 window.clearInterval(x);
但它也没有用。还尝试在 $(document).on('click', '.list', function()
内部和外部设置 var x
,但没有任何效果。
你有一个 shadowed x
这里:
var x;
$(document).on('click','#timer',function() {
var timestamp = localStorage.getItem("LivechatExpirationTime");
var countdown = new Date(timestamp).getTime();
//alert (countdown)
var x = setInterval(function () // <-- you redeclare x, so it's different from the first one
如果您只删除第二个 var
,它将按预期工作:
var x;
$(document).on('click','#timer',function() {
var timestamp = localStorage.getItem("LivechatExpirationTime");
var countdown = new Date(timestamp).getTime();
//alert (countdown)
x = setInterval(function ()