С Новым годом! Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
0 / 0 / 1
Регистрация: 15.07.2015
Сообщений: 53

Создать таймер с обратным отсчетом

20.07.2015, 11:11. Показов 2481. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нашел скрипт текущего времени с использованием графики, и вот не знаю как под таймер сделать. более подробные характеристики таймера найдете ниже
HTML5
1
2
3
4
5
6
7
8
9
<table cellpadding="5"><td bgcolor="black">
<img src="dg8.gif" name="hr1"><img
src="dg8.gif" name="hr2"><img
src="dgc.gif"><img
src="dg8.gif" name="mn1"><img
src="dg8.gif" name="mn2"><img
src="dgc.gif"><img
src="dg8.gif" name="se1"><img
src="dg8.gif" name="se2"></td></table>
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<script type="text/javascript">
dg0=new Image();dg0.src="dg0.gif";
dg1=new Image();dg1.src="dg1.gif";
dg2=new Image();dg2.src="dg2.gif";
dg3=new Image();dg3.src="dg3.gif";
dg4=new Image();dg4.src="dg4.gif";
dg5=new Image();dg5.src="dg5.gif";
dg6=new Image();dg6.src="dg6.gif";
dg7=new Image();dg7.src="dg7.gif";
dg8=new Image();dg8.src="dg8.gif";
dg9=new Image();dg9.src="dg9.gif";
function dotime(){
theTime=setTimeout('dotime()',1000);
d = new Date();
hr= d.getHours()+100;
mn= d.getMinutes()+100;
se= d.getSeconds()+100;
tot=''+hr+mn+se;
document.hr1.src='dg'+tot.substring(1,2)+'.gif';
document.hr2.src='dg'+tot.substring(2,3)+'.gif';
document.mn1.src='dg'+tot.substring(4,5)+'.gif';
document.mn2.src='dg'+tot.substring(5,6)+'.gif';
document.se1.src='dg'+tot.substring(7,8)+'.gif';
document.se2.src='dg'+tot.substring(8,9)+'.gif';
}
dotime();
</script>


Нужен таймер , с указанием до какой даты и времени надо идти, чтобы высвечивалось сколько осталось до указанного момента с использованием графики :
dg0 - 9.gif - цифры
dgc.gif - двоеточие
dgp.gif - точка

графика :
графика для таймера
Изображения
 
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.07.2015, 11:11
Ответы с готовыми решениями:

Таймер с обратным отсчетом
Всем привет. Нужен таймер с обратным отсчетом. К примеру есть кнопка, при нажатии на нее выполняется некоторое действие (php скрипт) и в...

Кнопка с обратным отсчетом и редиректом
Здравствуйте... Пожалуйста помогите. Нужна кнопка с таймером обратного отсчета. Хочу сделать кнопку с редиректом на другой сайт...

Таймер с отсчетом от нуля
Здравствуйте, как сделать таймер для сайта на Wordpress с отсчетом с нуля, вида 00:00:00. При нажатии по таймеру чтобы начинал считать...

15
16 / 16 / 6
Регистрация: 02.06.2015
Сообщений: 90
20.07.2015, 12:25
Цитата Сообщение от m1n1gamer Посмотреть сообщение
с указанием до какой даты и времени надо идти
где и как такое должно указываться?
"до какой даты",- то есть страница будет открыта все эти дни?
Отсчет с нуля?
0
0 / 0 / 1
Регистрация: 15.07.2015
Сообщений: 53
20.07.2015, 16:24  [ТС]
нужно чтобы таймер можно было поставить максимум на 24 часа, и независимо от моего захода на страницу. ( А то бывает такое что каждый раз сначала идет при каждом заходе)
0
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
20.07.2015, 16:53
вопросы:

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

2) когда установленное время "выйдет", что должен будет отображать таймер?
0
0 / 0 / 1
Регистрация: 15.07.2015
Сообщений: 53
20.07.2015, 17:39  [ТС]
1 - сколько осталось до конца.
2- перейти на другую страницу например konec.html
0
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
20.07.2015, 18:43
Цитата Сообщение от m1n1gamer Посмотреть сообщение
2- перейти на другую страницу например konec.html
хотели сказать "переадресовывается"?

ибо гость может зайти на страницу через 5 секунд после окончания работы таймера и желаемого вами момента "перехода" на другую страницу не увидит
0
16 / 16 / 6
Регистрация: 02.06.2015
Сообщений: 90
20.07.2015, 22:21
Лучший ответ Сообщение было отмечено m1n1gamer как решение

Решение

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
<!DOCTYPE html>  
<html>
<head>
<meta charset="utf-8">
<title>Таймер</title>
 
</head>
<body>
    
<table cellpadding="5"><td bgcolor="black">
<img src="dg8.gif" name="hr1">
<img src="dg8.gif" name="hr2">
<img src="dgc.gif">
<img src="dg8.gif" name="mn1">
<img src="dg8.gif" name="mn2">
<img src="dgc.gif">
<img src="dg8.gif" name="se1">
<img src="dg8.gif" name="se2">
</td></table>
  <button onclick="reset()" >сброс</button>  
    
    <script type="text/javascript">
 
var hr,mn,se;
if (localStorage.getItem('se') && (localStorage.getItem('hr')+localStorage.getItem('mn')+localStorage.getItem('se')) >0) {
hr = localStorage.getItem('hr');
mn = localStorage.getItem('mn');
se = localStorage.getItem('se'); 
}
    
    else {
var time = prompt("Введите время для таймера", "00:03:06");
hr = time.substring(0,2);       
mn= time.substring(3,5);  
se= time.substring(6,8); 
    };
 
dg0=new Image();dg0.src="dg0.gif";  
dg1=new Image();dg1.src="dg1.gif";
dg2=new Image();dg2.src="dg2.gif";
dg3=new Image();dg3.src="dg3.gif";
dg4=new Image();dg4.src="dg4.gif";
dg5=new Image();dg5.src="dg5.gif";
dg6=new Image();dg6.src="dg6.gif";
dg7=new Image();dg7.src="dg7.gif";
dg8=new Image();dg8.src="dg8.gif";
dg9=new Image();dg9.src="dg9.gif";
        
function dotime(){
 
    localStorage.setItem('se', se);
    localStorage.setItem('mn', mn);
    localStorage.setItem('hr', hr);
    
   se = se.toString();
   mn = mn.toString();
   hr = hr.toString();
 
if (hr.length<2) hr = "0"+hr;    
if (mn.length<2) mn = "0"+mn;  
if (se.length<2) se = "0"+se;  
    
tot= ''+hr+mn+se;
   
document.hr1.src='dg'+tot.substring(0,1)+'.gif';
document.hr2.src='dg'+tot.substring(1,2)+'.gif';
document.mn1.src='dg'+tot.substring(2,3)+'.gif';
document.mn2.src='dg'+tot.substring(3,4)+'.gif';
document.se1.src='dg'+tot.substring(4,5)+'.gif';
document.se2.src='dg'+tot.substring(5,6)+'.gif';
    
     if (tot <= 0) {
    clearTimeout(theTime);
    localStorage.removeItem('se');    
    localStorage.removeItem('mn');
    localStorage.removeItem('hr');      
        
         window.open('https://mail.ru/','_blank');
        alert("Время истекло");       
    }  
    
    se = se -1; 
    if (se < 0) {se = 59, mn = mn-1};
    if (mn < 0) {mn = 59, hr = hr-1};
  
if (tot>0) {    
 theTime=setTimeout('dotime()',1000);   
}
}
dotime();
        
    function reset(){
    se = 0;
    mn = 0;
    hr = 0;  
    dotime();  
    }
</script>
</body>
</html>
Добавлено через 11 минут
m1n1gamer, Работает, при перезагрузке не сбивается. Только можно (если не для себя) еще поставить проверку на неправильный ввод параметров (часов не более 24-х, минут и секунд не более 59) и др.
1
0 / 0 / 1
Регистрация: 15.07.2015
Сообщений: 53
21.07.2015, 09:51  [ТС]
а можно сделать чтобы до указанного времени таймер ишел? а не время которое указал?


просто мне этот таймер нужно залить на сайт, чтобы там он работал до указанного времени (например событие стрим будет в 15:00) и нужно чтобы время отчитывалось до этого момента, а потом переходило на другую страницу
0
16 / 16 / 6
Регистрация: 02.06.2015
Сообщений: 90
21.07.2015, 10:12
Цитата Сообщение от m1n1gamer Посмотреть сообщение
а можно сделать чтобы до указанного времени таймер ишел? а не время которое указал?
просто мне этот таймер нужно залить на сайт, чтобы там он работал до указанного времени (например событие стрим будет в 15:00) и нужно чтобы время отчитывалось до этого момента, а потом переходило на другую страницу
как будет вводиться время до которого должен идти таймер? так же как сейчас выставляется время, через prompt?
1
0 / 0 / 1
Регистрация: 15.07.2015
Сообщений: 53
21.07.2015, 10:41  [ТС]
есть несколько вариантов :
1) если возможно из файла time.txt чтобы по 100 раз не редактировать код сайта
или
2) внутри в документе задавать как переменную (просто time="время")

Добавлено через 20 минут
и возможно ли чтобы по окончанию на таймер высвечивалось вместо цифер тире? (dgl1.gif) а ":" оставалось неизменным?
Изображения
 
0
16 / 16 / 6
Регистрация: 02.06.2015
Сообщений: 90
21.07.2015, 14:27
Цитата Сообщение от m1n1gamer Посмотреть сообщение
возможно ли чтобы по окончанию на таймер высвечивалось вместо цифер тире? (dgl1.gif) а ":" оставалось неизменным?
нужна такая картинка с черточкой, по ссылке ее не было.
1
0 / 0 / 1
Регистрация: 15.07.2015
Сообщений: 53
21.07.2015, 15:20  [ТС]
вот держите
Изображения
 
0
16 / 16 / 6
Регистрация: 02.06.2015
Сообщений: 90
21.07.2015, 15:39
Лучший ответ Сообщение было отмечено m1n1gamer как решение

Решение

Что-то получилось, тестируйте.
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
<!DOCTYPE html>  
<html>
<head>
<meta charset="utf-8">
<title>Таймер</title>
 
</head>
<body>
    
<table cellpadding="5"><td bgcolor="black">
<img src="dg8.gif" name="hr1">
<img src="dg8.gif" name="hr2">
<img src="dgc.gif">
<img src="dg8.gif" name="mn1">
<img src="dg8.gif" name="mn2">
<img src="dgc.gif">
<img src="dg8.gif" name="se1">
<img src="dg8.gif" name="se2">
</td></table>
  <button onclick="reset()" >сброс</button>  
    
    <script>
        
var tm = "15:38:30";  //Время срабатывания таймера
        
hr1 = tm.substring(0,2);               
mn1= tm.substring(3,5);  
se1= tm.substring(6,8); 
 
        
var hr,mn,se;
if (localStorage.getItem('se') && (localStorage.getItem('hr')+localStorage.getItem('mn')+localStorage.getItem('se')) >0) {
hr = localStorage.getItem('hr');
mn = localStorage.getItem('mn');
se = localStorage.getItem('se'); 
}
    
    else {
d = new Date();
hr2= d.getHours();
mn2= d.getMinutes();
se2= d.getSeconds();
if (hr2.length<2) hr2 = "0"+hr2;    
if (mn2.length<2) mn2 = "0"+mn2;  
if (se2.length<2) se2 = "0"+se2;     
        
        
if (hr1<=hr2) hr = 24 - parseInt(hr2)+parseInt(hr1); 
if (hr1>hr2) hr = parseInt(hr1)-parseInt(hr2); 
if (hr1==hr2 && mn1>mn2) hr = "00";
if (hr1==hr2 && mn1<mn2) hr = "23";
if (hr1==hr2 && mn1==mn2 && se1>se2) hr = "00";
if (hr1==hr2 && mn1==mn2 && se1<se2) hr = "23";
        
if (mn1<mn2 && se1>se2) mn = 60 - parseInt(mn2)+parseInt(mn1);
if (mn1<mn2 && se1<se2) mn = 59 - parseInt(mn2)+parseInt(mn1);        
if (mn1>mn2 && se1>se2) mn = parseInt(mn1)-parseInt(mn2);
if (mn1>mn2 && se1<se2) mn = "00";
if (mn1==mn2 && se1>se2) mn = "00";
if (mn1==mn2 && se1<se2) mn = "59";
                
if (se1<se2) se = 60 - parseInt(se2)+parseInt(se1);
if (se1>se2) se = parseInt(se1)-parseInt(se2);   
if (se1==se2) se = "00";         
    };
      
dg0=new Image();dg0.src="dg0.gif";  
dg1=new Image();dg1.src="dg1.gif";
dg2=new Image();dg2.src="dg2.gif";
dg3=new Image();dg3.src="dg3.gif";
dg4=new Image();dg4.src="dg4.gif";
dg5=new Image();dg5.src="dg5.gif";
dg6=new Image();dg6.src="dg6.gif";
dg7=new Image();dg7.src="dg7.gif";
dg8=new Image();dg8.src="dg8.gif";
dg9=new Image();dg9.src="dg9.gif";
        
function dotime(){
 
    localStorage.setItem('se', se);
    localStorage.setItem('mn', mn);
    localStorage.setItem('hr', hr);
    
   se = se.toString();
   mn = mn.toString();
   hr = hr.toString();
 
if (hr.length<2) hr = "0"+hr;    
if (mn.length<2) mn = "0"+mn;  
if (se.length<2) se = "0"+se;  
    
tot= ''+hr+mn+se;
    
document.hr1.src='dg'+tot.substring(0,1)+'.gif';
document.hr2.src='dg'+tot.substring(1,2)+'.gif';
document.mn1.src='dg'+tot.substring(2,3)+'.gif';
document.mn2.src='dg'+tot.substring(3,4)+'.gif';
document.se1.src='dg'+tot.substring(4,5)+'.gif';
document.se2.src='dg'+tot.substring(5,6)+'.gif';
    
     if (tot <= 0) {
document.hr1.src='dgl1.gif';
document.hr2.src='dgl1.gif';
document.mn1.src='dgl1.gif';
document.mn2.src='dgl1.gif';
document.se1.src='dgl1.gif';
document.se2.src='dgl1.gif';
         
    clearTimeout(theTime);
    localStorage.removeItem('se');    
    localStorage.removeItem('mn');
    localStorage.removeItem('hr');      
         
     window.open('https://mail.ru/','_blank');      
    }  
    
    se = se -1; 
    if (se < 0) {se = 59, mn = mn-1};
    if (mn < 0) {mn = 59, hr = hr-1};
  
if (tot>0) {    
 theTime=setTimeout('dotime()',1000);   
}
}
dotime();
        
    function reset(){
    se = 0;
    mn = 0;
    hr = 0;  
    dotime();  
    }
</script>
</body>
</html>
1
0 / 0 / 1
Регистрация: 15.07.2015
Сообщений: 53
21.07.2015, 16:07  [ТС]
последний вопрос, можно сделать еще с указанием даты? чтобы было дата и время до которого таймер идет
например так.

1 - картинка пробел (dgx.gif)
2 - картинка-days
3 - картинка-пример

Табличка
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<table cellpadding="5"><td bgcolor="black">
<img src="dg0.gif" name="d1">
<img src="dg1.gif" name="d2">
<img src="dgx.gif">
<img src="days.gif">
<img src="dgx.gif">
<img src="dg8.gif" name="hr1">
<img src="dg8.gif" name="hr2">
<img src="dgc.gif">
<img src="dg8.gif" name="mn1">
<img src="dg8.gif" name="mn2">
<img src="dgc.gif">
<img src="dg8.gif" name="se1">
<img src="dg8.gif" name="se2">
</td></table>
Изображения
   
0
16 / 16 / 6
Регистрация: 02.06.2015
Сообщений: 90
21.07.2015, 16:28
Цитата Сообщение от m1n1gamer Посмотреть сообщение
последний вопрос, можно сделать еще с указанием даты? чтобы было дата и время до которого таймер идет
например так.
1 - картинка пробел (dgx.gif)
2 - картинка-days
3 - картинка-пример

Дата - то есть например завтра 22-е число, надо чтоб вывело цифру "22", если таймер поставлен на завтра? А после цифры через пробел надпись DAYS?
Время - то, которое забивается в переменную tm просто вывести на экран дополнительно к времени таймера после надписи DAYS?
Сам таймер тогда должен быть выше или ниже всего этого?
0
0 / 0 / 1
Регистрация: 15.07.2015
Сообщений: 53
21.07.2015, 18:06  [ТС]
Цитата Сообщение от armi1980
Дата - то есть например завтра 22-е число, надо чтоб вывело цифру "22", если таймер поставлен на завтра?
Нет, нужно вывести сколько осталось дней до 22 числа например: 01. Если меньше 1 дня то вместо 2 цифер , надо вывести 00 . После окончания таймера вместо цифер даты поставить черточки
Цитата Сообщение от armi1980
А после цифры через пробел надпись DAYS?
Время - то, которое забивается в переменную tm просто вывести на экран дополнительно к времени таймера после надписи DAYS?
Цитата Сообщение от armi1980
Сам таймер тогда должен быть выше или ниже всего этого?
Все как на примере можно сделать?

Добавлено через 11 минут
нужно вывести только сколько осталось до определенного момента
n-дней n-часов,минут,секунд
Выводить время указанного момента не надо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.07.2015, 18:06
Помогаю со студенческими работами здесь

Таймер с отсчетом цифр от значения и до бесконечности с определенным значением изменения в секунду
Добрый день! Появилась необходимость сделать счтчик (или как его назвать...) с отсчетом от определенной цифры. Нужно, чтобы отсчет шел...

Отключение кнопки на n время с обратным отсчетом
Привет! Подскажите, пожалуйста, как реализовать функцию, которая при нажатии на кнопку отключит эту самую кнопку на, например, 20 секунд,...

Дизайбл кнопки на какое-то время с обратным отсчетом
Доброй ночи! Есть такой вопрос - как реализовать функцию, при которой когда пользователь нажмет на кнопку, кнопка станет неактивной на...

Как создать таймер с обратным отсчетом?
Здравствуйте! Помогите решить задачу о созданию таймера с обратным отсчетом. Необходимо, чтобы шел отсчет времени от 05:30 к 00:00 (в...

Таймер с обратным отсчетом
Нужно сделать таймер с интервалом 15 минут и, что бы обратный отсчет выводился в label


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru