Я пытаюсь создать постоянно увеличивающееся число на моем сайте, которое начинается с определенного числа (например, 5 000 000) и увеличивается с равномерной скоростью (около 1 в секунду или около того) до бесконечности. Это должно происходить независимо от пользователя, загружающего веб-страницу - другими словами, таймер НЕ должен перезапускаться при 50000000 каждый раз при загрузке веб-страницы. Вместо этого будет показано новое большее число.
Я думал, что самый простой способ (в моих очень ограниченных знаниях по этому вопросу) может заключаться в использовании предыдущей даты в качестве отправной точки и подсчета секунд, прошедших с этой даты. Таким образом, это было бы точно, независимо от того, когда вы загружаете страницу и увеличиваетесь со скоростью 1 секунду.
Есть идеи?
var initSeconds = new Date(2010, 0).getSeconds() //january 1 of 2010
, BASE_NUMBER = 5000000
;
setInterval(function() {
var curSeconds = new Date().getSeconds()
, elem = $('#mydisplayelem')
;
elem.text(BASE_NUMBER + curSeconds - initSeconds);
}, 1000);
Что-то в этом роде... это не будет делать именно то, что вы хотите, вам нужен лучший расчет времени, но это должно вас начать.
Также см. Эту статью о расчете различий даты.