Ferzet
@Ferzet

JS таймер для сайта с отсчетом с нуля?

Здравствуйте, как сделать таймер для сайта с отсчетом с нуля, вида 00:00:00.
afca7527449f4899b711b84a85cf172c.jpg
При нажатии по таймеру чтобы начинал считать 1,2,3,4,5 и т.д. И также по клику останавливаться.
UPD: Поделитесь кодом :)
  • Вопрос задан
  • 2500 просмотров
Пригласить эксперта
Ответы на вопрос 2
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
setInterval либо взять готовый плагин для jQuery.
Ответ написан
sozercanie_kosmosa
@sozercanie_kosmosa
Это более менее точный таймер.

var sw = 0;
var ms = new Date().getTime();
var mslast = new Date().getTime();
var mscnt = 0;
var dt = new  Date(mscnt);

timeLoop();
function timeLoop(){
												
	if(sw){		
		dt = new  Date(mscnt);

		ms = new Date().getTime();
		mscnt += (ms - mslast);
		mslast = ms;
		
		console.log(getDateTimer() ); // для примера	
	}
		
	setTimeout(timeLoop, 1000);
}

function getDateTimer(){ // получить текущее время с момента запуска
	return dt.getUTCHours() + ':' + dt.getUTCMinutes()  + ':' + dt.getSeconds() ;
}

function playTimer( beginSec){ // запустить (параметр с какой секунды)
	if(beginSec !== undefined)  mscnt =  beginSec*1000;
	sw = 1;
}

function pauseTimer(){ // приостановить
	sw = 0;
}

// запускаем таймер со 150 секунды (2:30) ------------------------------------------
playTimer(150);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы