Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Запуск двух и более таймеров на сате. / 25 сообщений из 100, страница 1 из 4
10.07.2015, 09:13
    #39004117
zFARTz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
Всем доброго утра. Помогите с таймером обратного отсчёта. При запуске двух и более таймеров по отдельности всегда запускается первый. Как сделать чтобы запускались при нажатии все по разному. Допустим мне нужно 10 таймеров все на разное время я нажал пятый он и сработал нажал четвёртый сработал он.

И ещё вопросик есть ли возможность сделать так чтобы при обновлении страницы он не сбрасывался? Всем спасибо. Вот таймер.

<input type="button" value="mail" onclick="Pusk(),Sl()" >
<html>
<style>
.st{background-color:blue;
color:white;}
.sp{background-color:red;
color:white;}
</style>
</head>
<body>
<table border="0" cellpadding="0" cellspacing="0" bordercolor="#00000">
<tr><td><div class="st" id="tm">00:00:00</div></td></tr></table>
<script><!--
var s=15 //секунды
var m=00 //минуты
var h=00 //часы
var r=0; var tt=0;
function T()
{s-=1;
if(s<0) s=00,m-=1;
if(m<0) m=00,h-=1;
if(h<0) h=00
if(s+m+h==0)T3()
s = s+"";
m = m+"";
h = h+"";
if (s.length<2) s = "0"+s;
if (m.length<2) m = "0"+m;
if (h.length<2) h = "0"+h;
tm.innerHTML=h+":"+m+":"+s }
function Pusk()
{if(!r){r=1;T2()}}
function T2()
{if(s+m+h==0)s=11,m=00,h=00;
tt=setInterval("T()",1000)
tm.className="sp"} //
function T3()
{clearInterval(tt);r=0
tm.className="st"} //
function Sl()
{window.open('https://mail.ru/','_blank')}
--></script>
</body>
</html>
...
Рейтинг: 0 / 0
10.07.2015, 09:33
    #39004129
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
zFARTz,

у тебя всегда пишется в див id="tm". Сделай несколько дивов с разными id и в функцию передавай id дива в каком запустить таймер. Либо динамически их создавай из функции
...
Рейтинг: 0 / 0
10.07.2015, 09:36
    #39004135
zFARTz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
Я вроде пробовал меня id возможно что-то не то делал. Если есть возможность напишите пример пожалуйста. И по поводу динамически менять также напишите. Спасибо.
...
Рейтинг: 0 / 0
10.07.2015, 15:13
    #39004532
zFARTz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
Помогите тогда соединить два кода вместе. Ничего у меня не выходит.

Вот этот:::


<input type="button" value="mail" onclick="Pusk(),Sl()" >
<html>
<style>
.st{background-color:blue;
color:white;}
.sp{background-color:red;
color:white;}
</style>
</head>
<body>
<table border="0" cellpadding="0" cellspacing="0" bordercolor="#00000">
<tr><td><div class="st" id="tm">00:00:00</div></td></tr></table>


Вот с этим кодом:::::

var Timer = function(element, hours, minutes, sec, callback){
var me = this;
this.hours = hours;
this.minutes = minutes;
this.sec = sec;
this.element = element;
this.interval = null;
this.callback = callback;

this.reduce = function() {
if(me.hours + me.minutes + me.sec <= 0) {
me.stop();
return;
}
me.sec-=1;
if(me.sec<0) me.sec=00,me.minutes-=1;
if(me.minutes<0) me.minutes=00,h-=1;
if(me.hours<0) me.hours=00 ;
if(me.hours + me.minutes + me.sec==0)me.callback();
me.sec = me.sec+"";
me.minutes = me.minutes+"";
me.hours = me.hours+"";
if (me.sec.length<2) me.sec = "0"+me.sec;
if (me.minutes.length<2) me.minutes = "0"+me.minutes;
if (me.hours.length<2) me.hours = "0"+me.hours;
me.element.innerHTML=me.hours+":"+me.minutes+":"+me.sec;
}

this.start = function(){
me.interval = setInterval(me.reduce, 1000);
me.element.className="sp"
}
this.stop = function(){
clearInterval(me.interval);
me.element.className="st"
}

}


var timer = new Timer(document.getElementById('yourElementId'), 1, 20, 20, function(){window.open('https://mail.ru/','_blank');});
timer.start();
...
Рейтинг: 0 / 0
10.07.2015, 16:27
    #39004615
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
напиши лучше задачу, что тебе нужно в итоге. И код оформляй тегами(кнопка SRC), читать не реально
...
Рейтинг: 0 / 0
10.07.2015, 17:19
    #39004656
zFARTz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
Задача простая: Есть название ссылки рядом таймер стоит на нулях таких много идут столбиком. Нажимаем на название переходим по ссылке в это время срабатывает таймер обратного отсчёта. Ничего блокировать не нужно можно нажимать хоть 10 раз по кнопке и переходить на другой сайт. Просто нажал пошёл отсчёт определённого времени. Чтобы человек знал что ему останется столько-то времени и всё.
...
Рейтинг: 0 / 0
10.07.2015, 17:38
    #39004669
zFARTz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
Вот то что мне нужно но есть минусы.
1.После того как таймер отсчитывает своё время остаётся одна секунда 00:00:01 я не знаю как её убрать.
2. После того как таймер отсчитал своё время последующее нажатие не воспроизводит таймер заново.
Я не знаю что делать(




Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
<html>
<head>
    <title>111</title>
    <meta charset="utf-8">
    </head>
    <body>
     
<style>
  .st{background-color:blue; 
      color:white;}
  .sp{background-color:red; 
      color:white;}
</style>
</head>
<body>
    
<table border="0" cellpadding="0" cellspacing="0" bordercolor="#00000">
<tr><td><div class="st" id="tm">00:00:00</div></td></tr></table> 
<input type="button" value="mail" onclick="timer.start(),Sl()" > 





Код: 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.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
<script>      
 
 var Timer = function(element, hours, minutes, sec){
    var me = this;
    this.hours = hours;
    this.minutes = minutes;
    this.sec = sec;
    this.element = element;
    this.interval = null;
    
     
    this.reduce = function() {
        if(me.hours + me.minutes + me.sec <= 0) {
            me.stop();
            return;
        }
        me.sec-=1;
        if(me.sec<0) me.sec=00,me.minutes-=1;
        if(me.minutes<0) me.minutes=00,h-=1; 
        if(me.hours<0) me.hours=00 ;
        if(me.hours + me.minutes + me.sec==0)me.callback();
        me.sec = me.sec+"";
        me.minutes = me.minutes+"";
        me.hours = me.hours+""; 
        if (me.sec.length<2) me.sec = "0"+me.sec;
        if (me.minutes.length<2) me.minutes = "0"+me.minutes;
        if (me.hours.length<2) me.hours = "0"+me.hours;
        me.element.innerHTML=me.hours+":"+me.minutes+":"+me.sec; 
    }
     
    this.start = function(){
        me.interval = setInterval(me.reduce, 1000);
        me.element.className="sp"
    }
    this.stop = function(){
        clearInterval(me.interval);
        me.element.className="st"
    }
     
}
function Sl()
    {window.open('https://mail.ru/','_blank');}                        
var timer = new Timer(document.getElementById('tm'), 00, 00, 10);
 </script>          
   
    </body>
</html>
...
Рейтинг: 0 / 0
10.07.2015, 18:01
    #39004691
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
...
Рейтинг: 0 / 0
10.07.2015, 18:03
    #39004695
zFARTz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
SharuPoNemnogu,ААААААААААААА!!!!!!!!!! Это онооооо. Можете полностью сбросить код.
...
Рейтинг: 0 / 0
10.07.2015, 18:14
    #39004706
kunaksergey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
нажав 2 раза на одной и той же кнопке получаем отличный эфект
...
Рейтинг: 0 / 0
10.07.2015, 18:15
    #39004711
zFARTz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
SharuPoNemnogu, а как разное время поставить на таймерах?
...
Рейтинг: 0 / 0
10.07.2015, 18:40
    #39004730
zFARTz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
Разобрался. Вы молодцы что помогли спасибо вам огромное. Остался у меня ещё один вопрос. Я слышал есть возможность подключить базы к коду чтобы не сбрасывался таймер при перезагрузки страницы. Возможно кто-нибудь из вас знает как это сделать?
...
Рейтинг: 0 / 0
10.07.2015, 19:23
    #39004756
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
kunaksergey,

я за 5 минут до выхода с работы написал, не проверял особо.

zFARTz,

как вариант jquery.cookie подключить и писать текущее значение в куки, потом доставать если есть.
...
Рейтинг: 0 / 0
10.07.2015, 19:48
    #39004773
zFARTz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
SharuPoNemnogu, я так понимаю это будет нелегко.
...
Рейтинг: 0 / 0
11.07.2015, 08:47
    #39004896
zFARTz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
SharuPoNemnogu, У меня ещё вопрос напишите пожалуйста а как сделать чтобы я переходил по разным ссылкам по нажатию кнопки и на разное время ставить отсчёт? Допустим первая делает переход на mail.ru (20сек) а вторая на google.ru (35сек)
...
Рейтинг: 0 / 0
11.07.2015, 11:25
    #39004943
zFARTz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
Не работает таймер я его вчера тестировал. Если выставить время на 10 минут он отсчитывает как секунды а если поставить на 3 часа так же не работает.
...
Рейтинг: 0 / 0
11.07.2015, 13:19
    #39004985
zFARTz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
Почему таймер не отсчитывает часы а только секунды и минуты. Помогите пожалуйста решить проблему.


Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
<html>
<head>    
<style>
  .st{background-color:blue; 
      color:white;}
  .sp{background-color:red; 
      color:white;}
</style>
</head>
<body>
    
<table border="0" cellpadding="0" cellspacing="0" bordercolor="#00000">
<tr><td><div class="st" id="tm">00:00:00</div></td></tr> 
<input type="button" value="mail" onclick="startTimer('tm');Sl();" >




Код: 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.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
<script>      
 
 var Timer = function(element, hours, minutes, sec){
    var me = this;
    this.hours = hours;
    this.minutes = minutes;
    this.sec = sec;
    this.element = element;
    this.interval = null;
    
     
    this.reduce = function() {
        if(me.hours + me.minutes + me.sec <= 0) {
            me.stop();
            return;
        }
        me.sec-=1;
        if(me.sec<0) me.sec=59,me.minutes-=1;
        if(me.minutes<0) me.minutes=59,h-=1; 
        if(me.hours<0) me.hours=23;
        me.sec = me.sec+"";
        me.minutes = me.minutes+"";
        me.hours = me.hours+""; 
        if (me.sec.length<2) me.sec = "0"+me.sec;
        if (me.minutes.length<2) me.minutes = "0"+me.minutes;
        if (me.hours.length<2) me.hours = "0"+me.hours;
        me.element.innerHTML=me.hours+":"+me.minutes+":"+me.sec; 
    }
     
    this.start = function(){
        me.interval = setInterval(me.reduce, 1000);
        me.element.className="sp"
    }
    this.stop = function(){
        clearInterval(me.interval);
        me.element.className="st"
    }
     
}
function Sl()
    {window.open('https://mail.ru/','_blank');}     
function startTimer(obgId) {
var timer = new Timer(document.getElementById(obgId), 10, 00, 10);
    timer.start();
}
 </script>          
   
    </body>
</html>
...
Рейтинг: 0 / 0
11.07.2015, 13:31
    #39004993
yelena
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
zFARTz, а вы сами не хотите научиться код читать? Так и будете всю жизнь на форуме плакаться?

Не работает, наверное, потому что

Код: javascript
1.
2.
        if(me.minutes<0) me.minutes=59,h-=1; 
        if(me.hours<0) me.hours=23;



а надо

Код: javascript
1.
2.
        if(me.minutes<0) me.minutes=59,me.hours-=1; 
        if(me.hours<0) me.hours=23;



Ощущаете разницу?
...
Рейтинг: 0 / 0
11.07.2015, 14:09
    #39005017
zFARTz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
yelena, Вы гениальны! Снимаю шляпу перед Вами!!! Никто не хочет научить. Возможно Вы знаете как этот таймер подключить к библиотекам jQuery? Желательно без заливки файлов. Если есть такая возможность. Я пробовал но у меня ничего не вышло. Это последний шаг который мне нужен.
...
Рейтинг: 0 / 0
11.07.2015, 14:32
    #39005025
yelena
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
zFARTz, в интернете полно материала для самостоятельного обучения.

Что вы хотите от библиотек jQuery? Если вы вообще понимаете, о чем вы говорите. И какая тут связь с таймером?
Вы таймер цепляете к конкретному объекту на странице.
Этот объект можно найти на странице как при помощи DOM API, так и при помощи API jQuery. Большой разницы нет, чтобы прицепить к объекту ваш таймер.

Про заливку файлов не поняла вообще.

Если имеется в виду использование Content Delivery Network (CDN), то можно вот так:
Код: javascript
1.
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>


Или вот так:
Код: javascript
1.
<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
...
Рейтинг: 0 / 0
11.07.2015, 14:38
    #39005026
zFARTz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
yelena, мне нужно чтобы таймер продолжал работать после перезагрузки страницы а он сбрасывается. Как быть?
...
Рейтинг: 0 / 0
11.07.2015, 14:44
    #39005030
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
zFARTzyelena, мне нужно чтобы таймер продолжал работать после перезагрузки страницы а он сбрасывается. Как быть?хранить время старта на сервере, или в cookie, или в localStorage
...
Рейтинг: 0 / 0
11.07.2015, 14:46
    #39005032
zFARTz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
skyANA, Но как это сделать?
...
Рейтинг: 0 / 0
11.07.2015, 14:53
    #39005036
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
zFARTzskyANA, Но как это сделать?а какую проблему Вы решаете?

Может следует хранить дату окончания действия. К примеру студенту необходимо пройти онлайн тест до восьми часов вечера следующего вторника.
Тут серверное решение.
На каждый пункт из теста дается от часа, до двух. Тут тоже серверное.

А что у Вас?
...
Рейтинг: 0 / 0
11.07.2015, 15:00
    #39005041
zFARTz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск двух и более таймеров на сате.
skyANA, выставляется определённое время на каждый таймер два,три часа и.д. Вы зашли на сайт нажали ссылку посмотрели её а затем пошёл отсчёт времени. Вот мне и нужно чтобы таймер не сбрасывался.
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Запуск двух и более таймеров на сате. / 25 сообщений из 100, страница 1 из 4
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]