我使用这个脚本:CircularCountDownJs停止计数器的背景
我用它来创建不同屏幕上不同的倒计时,一切完美的作品,除了一个大问题。
当我开始倒计时并让它结束时,一切正常,但是如果我创建2:00倒计时,移至下一个屏幕,并在倒计时2:00结束时创建另一个5:00倒计时,它会触发结束回调函数。我想避免这种行为。
我知道计数器正在运行,虽然在屏幕上看不到。要将屏幕更改为第二个计数器,用户必须单击一个div
,该事件有一个click
事件。
有了这个点击事件,我试图摧毁倒计时,但我只能从DOM中删除计数器。当倒计数到达0时,倒计时将继续工作并执行结束功能。
我需要手动停止用户click
事件的倒计时。我已经看了几天的代码,但我无法弄清楚如何去做。
我使用的倒计时是这样的:
$(document).ready(function() {
valor_tiempo_f13 = 10;
$('#pf-ag-fase1-start').click(function() {
//empezar programa
console.log('Programa iniciado');
// Run the countdown
$('#quesito').circularCountDown({
delayToFadeIn: 500,
size: 160,
fontColor: '#fff',
colorCircle: '#2a292f',
background: '#2a292f',
reverseLoading: false,
duration: {
hours: 0,
minutes: 0,
seconds: valor_tiempo_f13
},
beforeStart: function() {
},
end: function(countdown) {
countdown.destroy();
$('.launcher').show();
$('#facial-antiaging-2-finalizada').addClass('active');
console.log('Programa terminado');
}
});
});
$('#stop').click(function() {
console.log('needs to really stop the countdown');
});
});
#stop{
background: #ccc;
position: absolute;
left: 20%;
bottom: 10%;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://www.espluga.net/genesis10api/js/circular-countdown.min.js"></script>
<div id="quesito" class="timer"></div>
<div id="pf-ag-fase1-start">START</div>
<div id="stop">STOP</div>
以上是我需要解决的例子。 STOP按钮必须销毁倒计时。我用图形来完成它,但我无法停止后台进程。
感谢您的回复。第二种解决方案似乎正在工作,但经过一些测试后,它根本无法工作。该柜台似乎在作为全球变量的背景下工作。如果只有一个计数器同时运行,此代码可解决此问题。如果我启动具有不同ID和变量的第二个计数器,则第一个倒计时是第一个倒数计时器。我需要真正停止对第二个柜台的柜台可以得到他自己的价值观而不受影响,但第一个。谢谢。 –