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

Пауза в таймере обратного отсчета

04.12.2016, 00:29. Показов 2217. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть скрипт
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
<script type="text/javascript">  
   timer_num = 20; // Число задержки в секундах   
   function timer_fc(){   
   if(timer_num>0){   
   $('#timer_num').text(timer_num);   
   timer_num--;   
   setTimeout("timer_fc()", 1000)   
   }else{   
   $('#timer_1').hide(); $('#timer_2').show();   
   }}   
   timer_fc();
   </script>
и есть еще скрипт который отслеживает передвижение мышки

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
   <script type="text/javascript">
  var no_active_delay = 5; // Количество секунд простоя мыши, при котором пользователь считается неактивным
  var now_no_active = 0; // Текущее количество секунд простоя мыши
  setInterval("now_no_active++;", 1000); // Каждую секунду увеличиваем количество секунд простоя мыши
  setInterval("updateChat()", 1000); // Запускаем функцию updateChat() через определённый интервал
  document.onmousemove = activeUser; // Ставим обработчик на движение курсора мыши
  function activeUser() {
    now_no_active = 0; // Обнуляем счётчик простоя секунд
  }
  function updateChat() {
    if (now_no_active >= no_active_delay) { // Проверяем не превышен ли "предел активности" пользователя
      alert("Пользователь не активен"); // В реальности стоит убрать, а здесь дано как доказательство того, что всё работает
      return;
    }
 
  }
</script>
можно ли как то сделать что бы 2 скрипт вместо вывода сообщения ставил 1 таймер на паузу?
В скриптах вообще не понимаю поэтому желательно готовый вариант.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.12.2016, 00:29
Ответы с готовыми решениями:

Как изменить время в таймере обратного отсчета?
Доброго времени суток! Таймер начинает обратный отсчет после обновления страницы с 1 часа: 59 минут : 59 секунд. Нужно сделать, что бы он...

Таймер обратного отсчета
Здравствуйте. Делаю таймер, использую плагин ФлипКоунт. Вопрос: что нужно вставить в переменную t, чтоб он всегда отсчитывал время до 24...

Таймер обратного отсчета
Доброго времени суток, хочу сделать что-то вроде таймера. Есть число 10000 и 100, и хочу чтоб был обратный отсчет от 10000 до 100 к примеру...

9
268 / 268 / 109
Регистрация: 22.08.2013
Сообщений: 907
04.12.2016, 11:54
PHP/HTML
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
<script type="text/javascript">  
   timer_num = 20; // Число задержки в секундах   
   var timer_active = true;
   function timer_fc(){   
   if(timer_num>0 && timer_active){   
   $('#timer_num').text(timer_num);   
   timer_num--;   
   setTimeout("timer_fc()", 1000)   
   }else{   
   $('#timer_1').hide(); $('#timer_2').show();   
   }}   
   timer_fc();
   </script>
 
      <script type="text/javascript">
  var no_active_delay = 5; // Количество секунд простоя мыши, при котором пользователь считается неактивным
  var now_no_active = 0; // Текущее количество секунд простоя мыши
  setInterval("now_no_active++;", 1000); // Каждую секунду увеличиваем количество секунд простоя мыши
  setInterval("updateChat()", 1000); // Запускаем функцию updateChat() через определённый интервал
  document.onmousemove = activeUser; // Ставим обработчик на движение курсора мыши
  function activeUser() {
    now_no_active = 0; // Обнуляем счётчик простоя секунд
  }
  function updateChat() {
    if (now_no_active >= no_active_delay) { // Проверяем не превышен ли "предел активности" пользователя
        timer_active = false;
      alert("Пользователь не активен"); // В реальности стоит убрать, а здесь дано как доказательство того, что всё работает
      return;
    }
 
  }
</script>
За код не отвечаю - нет возможности проверить. По-идеи, нужно прикреплять исходники.
0
0 / 0 / 1
Регистрация: 23.08.2013
Сообщений: 101
04.12.2016, 15:08  [ТС]
Так обнуляет просто через 5 секунд. вот полный код таймера

PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<table id="timer_1" border="0" cellpadding="2" cellspacing="2"><tbody><tr>   
<td>Подождите </td>   
<td id="timer_num" style="width:70px; height:70px; background: url('http://3week.clan.su/3week-scripts/1.gif') no-repeat; text-align:center; font-size:36px; color:#666"></td>   
<td> секунд...</td>   
</tr></tbody></table>   
<div style="display:none" id="timer_2">   
Тут все что хош)   
</div>  
<script type="text/javascript">   
   timer_num = 20; // Число задержки в секундах   
   function timer_fc(){   
   if(timer_num>0){   
   $('#timer_num').text(timer_num);   
   timer_num--;   
   setTimeout("timer_fc()", 1000)   
   }else{   
   $('#timer_1').hide(); $('#timer_2').show();   
   }}   
   timer_fc();   
   </script>
0
268 / 268 / 109
Регистрация: 22.08.2013
Сообщений: 907
04.12.2016, 15:48
PHP/HTML
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
<script type="text/javascript">
    timer_num = 20; // Число задержки в секундах
    var timer_active = true;
    function timer_fc() {
        if (timer_active) {
            if (timer_num > 0) {
                $('#timer_num').text(timer_num);
                timer_num--;
                setTimeout("timer_fc()", 1000)
            } else {
                $('#timer_1').hide();
                $('#timer_2').show();
            }
        }
    }
    timer_fc();
</script>
 
<script type="text/javascript">
    var no_active_delay = 5; // Количество секунд простоя мыши, при котором пользователь считается неактивным
    var now_no_active = 0; // Текущее количество секунд простоя мыши
    setInterval("now_no_active++;", 1000); // Каждую секунду увеличиваем количество секунд простоя мыши
    setInterval("updateChat()", 1000); // Запускаем функцию updateChat() через определённый интервал
    document.onmousemove = activeUser; // Ставим обработчик на движение курсора мыши
    function activeUser() {
        now_no_active = 0; // Обнуляем счётчик простоя секунд
    }
    function updateChat() {
        if (now_no_active >= no_active_delay) { // Проверяем не превышен ли "предел активности" пользователя
            timer_active = false;
            alert("Пользователь не активен"); // В реальности стоит убрать, а здесь дано как доказательство того, что всё работает
            return;
        }
 
    }
</script>
0
0 / 0 / 1
Регистрация: 23.08.2013
Сообщений: 101
04.12.2016, 15:55  [ТС]
В общем я наверно не правильно задачу поставил, простите. Мне нужно что бы если пользователь двигал мышкой таймер шел если не двигает таймер стоит.
0
268 / 268 / 109
Регистрация: 22.08.2013
Сообщений: 907
04.12.2016, 17:35
https://jsfiddle.net/5uyw91sg/1/

HTML5
1
<div id="timer">0</div>
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
var timer_active = true;
 
var temp_timer = null;
 
document.onmousemove = function() {
    clearTimeout(temp_timer);
 
    timer_active = false;
  
  temp_timer = setTimeout(function() {
    if (!timer_active) {
        timer_active = true;
      console.log('Mouse isn\'t moving');
    }
  }, 1000);
};
 
var timer_body = document.getElementById('timer');
 
setInterval(function() {
    if (timer_active) {
    timer_body.innerHTML = parseInt(timer_body.innerHTML) + 1;
  }
}, 1000);
Добавлено через 59 секунд
Ой, это противоположно вашей задачи. Надо переделать код.

Добавлено через 7 минут
https://jsfiddle.net/5uyw91sg/2/ вот вариант "когда мышь двигается - таймер работает".
0
0 / 0 / 1
Регистрация: 23.08.2013
Сообщений: 101
04.12.2016, 18:48  [ТС]
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
var timer_active = false;
 
var temp_timer = null;
 
var timer_body = document.getElementById('timer');
 
document.onmousemove = function() {
    clearTimeout(temp_timer);
 
    timer_active = true;
  
  temp_timer = setTimeout(function() {
    timer_active = false;
  }, 1000);
};
 
setInterval(function() {
    if (timer_active) {
    timer_body.innerHTML = parseInt(timer_body.innerHTML) + 1;
  }
}, 1000);
то что нужно только минус в том, что надо постоянно мышью двигать, ну да ладно.
и еще нужно по истечению времени вот такое делать
$('#timer_1').hide(); $('#timer_2').show();
помогите прикрутить пожалуйста!

Добавлено через 1 минуту
только заметил) это секундомер а не таймер, время должно назад идти)
0
268 / 268 / 109
Регистрация: 22.08.2013
Сообщений: 907
04.12.2016, 19:08
Цитата Сообщение от Алексей92 Посмотреть сообщение
помогите прикрутить пожалуйста!
Сделать за вас?
0
0 / 0 / 1
Регистрация: 23.08.2013
Сообщений: 101
04.12.2016, 20:22  [ТС]
Ну если вам не сложно) я в JS вообще ничего не понимаю. сегодня целый день пытаюсь разобраться и по нолям)
0
268 / 268 / 109
Регистрация: 22.08.2013
Сообщений: 907
05.12.2016, 10:51
PHP/HTML
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
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Timer</title>
</head>
<body>
<div id="timer_body"></div>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script>
    var timerActive = false;
 
    var timeLeft = 10;
 
    var tempTimer = null;
 
    var timerBody = $('#timer_body');
 
    timerBody.html(timeLeft);
 
    $(document).mousemove(function() {
        clearTimeout(tempTimer);
 
        timerActive = true;
 
        // если прошла секунда после последнего
        // движения мышью, значит пользователь не
        // двигает ею
        tempTimer = setTimeout(function() {
            timerActive = false;
        }, 1000);
    });
 
    var mainInterval = setInterval(function() {
        if (timerActive) {
            timeLeft--;
 
            if (timeLeft === 0) {
                clearInterval(mainInterval);
 
                console.log('Do what I say!');
            }
 
            timerBody.html(timeLeft);
        }
    }, 1000);
</script>
</body>
</html>
Вот на Jquery. Вместо
JavaScript
1
console.log('Do what I say!');
можете подставить что-угодно
PHP/HTML
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
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Timer</title>
</head>
<body>
<div id="timer_body"></div>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script>
    var timerActive = false;
 
    var timeLeft = 10;
 
    var tempTimer = null;
 
    var timerBody = $('#timer_body');
 
    timerBody.html(timeLeft);
 
    $(document).mousemove(function() {
        clearTimeout(tempTimer);
 
        timerActive = true;
 
        // если прошла секунда после последнего
        // движения мышью, значит пользователь не
        // двигает ею
        tempTimer = setTimeout(function() {
            timerActive = false;
        }, 1000);
    });
 
    var mainInterval = setInterval(function() {
        if (timerActive) {
            timeLeft--;
 
            if (timeLeft === 0) {
                clearInterval(mainInterval);
 
                $('#timer_1').hide(); // произвольный код
                $('#timer_2').show(); // произвольный код
            }
 
            timerBody.html(timeLeft);
        }
    }, 1000);
</script>
</body>
</html>
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.12.2016, 10:51
Помогаю со студенческими работами здесь

Таймер обратного отсчёта
У меня возникла проблема с реализацией работы таймера. Во-первых, у меня не получается перезапускать его автоматически. Во-вторых, мне...

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

JavaScript таймер обратного отсчёта
Доброго времени суток Подскажите как сделать. чтобы разница var_timer всегда была равна пяти часам. вот код, часть кода function...

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

Цикл таймера обратного отсчета
Привет, друзья! Помогите зациклить таймер обратного отсчета. Сейчас счетчик выставляется вручную и отматывает до 0, затем сам...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
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
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru