我需要在返回初始结果后停止计数器,以便随后可以将内部HTL作为一个静态数字插入结果,然后再由单独的脚本依靠该内部数字。
计数器可以很好地进行连续计数,但是我无法一辈子都停下来。
我已经尝试过clearInterval,stopPropagation,修改变量,但老实说,我实在是个大灾难,不知道在哪里进行这些(或其他)更改以停止并保留初始返回值。
var counterData = {'startCounter':'1','startingDate':'02\/01\/2019','incrementPerSecond':'2','counterInterval':'3'};
var canYouBelieveThisGuy = function () {
'use strict';
if ($("#stat_counter").length > 0) {
var currentstat = parseFloat(counterData['startCounter'].replace(/[^\d.-]/g,''));
var intervalSeconds = counterData['counterInterval'] * 1000; //1000;
var increaseUnit = counterData['incrementPerSecond'];
var initialDate = new Date(counterData["startingDate"]);
setInterval(function () {
var currentDate = new Date();
var timeDiffSeconds = (currentDate - initialDate)/1000;
var increment = timeDiffSeconds * increaseUnit;
var currentstat2 = parseInt(currentstat + increment) * 100;
currentstat2 = (currentstat2 / 100).toFixed(0)
var num = (currentstat2);
$("#stat_counter").text(num);
}, intervalSeconds);
};
}
(jQuery, this);
返回值应该是初次运行后产生的数字,并且此后应完全停止运行。
感谢您的帮助和温柔!