@MoffunW

При нажатии на кнопку должен начаться таймер по окончании которого пользователю будет выведена картинка?

Я лютый новичок в JS, мне нужно чтобы когда пользователь нажмёт на кнопку, появился отсчёт 10 секунд, после окончания которого отсчёт скроется и появится картинка
  • Вопрос задан
  • 66 просмотров
Решения вопроса 1
KorniloFF
@KorniloFF Куратор тега JavaScript
Работаю по font-end / JS
Как простой вариант:
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@zkrvndm
Боты, парсеры, расширения
Пример простейшего таймера с опорой на какую-то конкретную дату:
var start_date = new Date().getTime() + 11000;

setInterval(function() {
	
	var current_date = new Date().getTime();
	
	if (start_date > current_date) {
		
		var left_date = start_date - current_date;
		
		var hours = Math.floor(left_date / 3600000);
		var minutes = Math.floor((left_date % 3600000) / 60000);
		var seconds = Math.floor((left_date % 60000) / 1000);
		
		var left_time = '';
		
		if (hours) {
			left_time += hours + ' ч. ';
		}
		if (minutes) {
			left_time += minutes + ' м. ';
		}
		if (String(seconds).length === 2) {
			left_time += seconds + ' с.';
		} else {
			left_time += '0' + seconds + ' с.';
		}
		
		document.querySelector('body').innerHTML = 'Осталось времени ' + left_time;
		
	}
	
	else {
		
		var elapsed_date = current_date - start_date;
		
		var hours = Math.floor(elapsed_date / 3600000);
		var minutes = Math.floor((elapsed_date % 3600000) / 60000);
		var seconds = Math.floor((elapsed_date % 60000) / 1000);
		
		var elapsed_time = '';
		
		if (hours) {
			elapsed_time += hours + ' ч. ';
		}
		if (minutes) {
			elapsed_time += minutes + ' м. ';
		}
		if (String(seconds).length === 2) {
			elapsed_time += seconds + ' с.';
		} else {
			elapsed_time += '0' + seconds + ' с.';
		}
		
		document.querySelector('body').innerHTML = 'Прошло времени ' + elapsed_time;
		
	}
	
}, 1000);
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы