Показать сообщение отдельно
  #1 (permalink)  
Старый 26.01.2018, 19:07
Новичок на форуме
Отправить личное сообщение для A1exy Посмотреть профиль Найти все сообщения от A1exy
 
Регистрация: 26.01.2018
Сообщений: 3

Рестарт таймера
Всем привет. Такая вот проблема. Написал скрипт таймера, не знаю как его бесконечно запускать. При рестарте таймера, должны обновляться таблицы. Буду очень благодарен за помощь.
window.onload = function() {

	function f(x) {
		var min = 0;
		var max = 100;
		return Math.floor(Math.random() * (max - min + 1)) + min;
	}

	var tableObj1 = document.createElement('table');
	var tableObj2 = document.createElement('table');

	tableObj1.id = 'table1';
	tableObj2.id = 'table2';

	var tableHTML1 = '<tr><td>table1</td></tr>';
	var tableHTML2 = '<tr><td>table2</td></tr>';
	for (var i = 1; i <= 12; i++) {
		tableHTML1 += '<tr><td>' + f(i) + '</td></tr>';
		tableHTML2 += '<tr><td>' + f(i) + '</td></tr>';
	}

	tableObj1.innerHTML = tableHTML1;
	document.body.appendChild(tableObj1);
	tableObj2.innerHTML = tableHTML2;
	document.body.appendChild(tableObj2);

	function timer() {

		var minute = document.getElementById('minute').innerHTML;
		var second = document.getElementById('second').innerHTML;
		var end = false;

		if (second > 0) second--;
		else {
			second = 60;

			if (minute > 0) minute--;
			else {
				second = 60;
				end = true;
			}
		}

		switch (second) {
			case 40:
				chg();
				break;
			case 20:
				chg();
				break;
		}

		if (end) {
			clearInterval(intervalID);

		} else {

			document.getElementById('minute').innerHTML = minute;
			document.getElementById('second').innerHTML = second;
		}
	}
	window.intervalID = setInterval(timer, 1000);
}

function chg() {
	var d1 = document.getElementById("table1");
	var d2 = document.getElementById("table2");
	var d11 = d1.cloneNode(true);
	var d22 = d2.cloneNode(true);
	d2.parentNode.insertBefore(d11, d2);
	d1.parentNode.insertBefore(d22, d1);
	d1.parentNode.removeChild(d1);
	d2.parentNode.removeChild(d2);
}

<div id="timer">
        <div id="minute">01</div>&nbsp;:
        <div id="second">30</div>
    </div>


p.s. Извините. если не там тему создал

Последний раз редактировалось A1exy, 26.01.2018 в 19:18.
Ответить с цитированием