Запущен ли таймер
Есть ли в js возможность проверить запущен ли таймер?
Например вот код: var T1 = 0; var T2 = 0; $(function() { T1 = setInterval(timer1, 1000); T2 = setInterval(timer2, 1000); }); function timers_protection () { if (!T1) { T1 = setInterval(timer1, 1000); } if (!T2) { T2 = setInterval(timer2, 1000); } } function timer1 () { console.log('timer1'); } function timer2 () { console.log('timer2'); } функция timers_protection будет проверять запущены ли таймер1 и таймер2. Но как проверить работает ли таймер, если в консоли браузера прописать его остановку методом clearInterval(<номер>)? |
На сайте одни тупаки
|
Roman111, так как ты хочешь - не получится сделать.
Как вариант, создай булеву переменную, пиши в неё true когда запускаешь таймер, а когда останавливаешь таймер, то присваивай false. А вообще, просто обнуляй переменные таймера: T1 = setInterval(function() {}, 1000); //... clearInterval(T1); T1 = null; //... if(T1) { //есть таймер } else { //нет таймера } |
Та все получится. От например как я сделал
var time = 0; timer1(); setInterval(timer1, 500); setInterval(timers_protection, 500); function timer1 () { time = getSeconds(); console.log('timer1'); } function timers_protection () { if (getSeconds() - time > 1) { timer1(); setInterval(timer1, 500); } } function getSeconds() { var now = new Date(); return now.getSeconds(); } Просто думал, может есть не такой кривой способ |
Часовой пояс GMT +3, время: 13:57. |