Saratov64,
нужна глобальная видимость для timer |
Цитата:
Цитата:
вообщем я сформулировал свое меню. Как оно должно работать. И так, у меня есть три - или n.... ссылок для примера три. Я хочу нажать первую, идет опрос датчика раз в 6 секунд, (устанавливаю глобальную переменную в значение = 1), как только я нажимаю вторую ссылку, то меняется значение первой, и запускается clearInterval(timer); и запускается опрос второй ссылки, ну и так далее. Это по моей теории, конечно, опять же если я правильно для себя ставлю задачу, но реализация пока не получилась, поправьте мой код, пожалуйста ... <!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> </style> <script> var i=0; // устанавливаем первое значение ГЛОБВЛЬНОЙ переменной alert (i); //вывод текущего значения переменной timer; function allstation(){ var i = 1; alert ("allstation"); if (i==1){ timer = setInterval(allstation, 6000); } else { clearInterval(timer); } } function st1(){ var i = 2; alert ("st1"); if (i==2){ timer = setInterval(st1, 6000); }else{ clearInterval(timer); } } function st2(){ var i = 3; alert ("st2"); if (i==3){ timer = setInterval(st2, 6000); }else{ clearInterval(timer); } } </script> </head> <body> <a href="#" onclick="allstation();">allstation</a> <br> <a href="#" onclick="st1();">st1</a> <br> <a href="#" onclick="st2();">st2</a> </body> </html> |
Saratov64,
Пожалуйста, отформатируйте свой код! Для этого его можно заключить в специальные теги: js/css/html и т.п., например: [js] ... ваш код... [/js] О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting. |
Цитата:
|
Цитата:
|
Saratov64,
попробуйте описать алгоритм того что хотите сделать |
Цитата:
есть БД. В нее пишутся данные с датчиков. Нужно для мониторинга по каждому датчику смотреть ТЕКУЩИЕ -МГНОВЕННЫЕ ДАННЫЕ которые должны отображаться на мониторе так же онлайн. Человек нажимает на 1 ссылку, и смотрит показания параметров 1го датчика, и они у него отображаются раз в 6 секунд. к каждой ссылке привязан PHP запрос SELECT * FROM dbo.test 1 ссылка - 1й датчик 2 ссылка -2й датчик 3 ссылка ...... ... .. 7 ссылка - 7й датчик Потом допустим ему нужно показания второго датчика мониторить, он нажимает на вторую ссылку, и прирывается выполнение опроса первой ссылки. А как это реализовать, я придумал, только через условие if |
Saratov64,
<!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> </style> <script> window.addEventListener("DOMContentLoaded", function() { var btn = document.querySelectorAll(".btn"); btn[0].addEventListener("click", function() { clearInterval(timer); timer = setInterval(station1, timeInterval) }); btn[1].addEventListener("click", function() { clearInterval(timer); timer = setInterval(station2, timeInterval) }); function station1() { document.querySelector("#main").innerHTML += "1111 " } function station2() { document.querySelector("#main").innerHTML += "2222 " } var timeInterval = 1E3; var timer = setInterval(station1, timeInterval) }); </script> </script> </head> <body> <div id="main"></div> <input class="btn" name="" type="button" value="fn1"> <input class="btn" name="" type="button" value="fn2"> </body> </html> |
<script> window.addEventListener("DOMContentLoaded", function() { var btn = document.querySelectorAll(".btn"); btn[0].addEventListener("click", function() { clearInterval(timer); timer = setInterval(station1, timeInterval) }); </script> Я тока с сентября начал изучать, и Вы, мне приводили уже в пример, конструкцию данную, она НЕ заработала в IE, мне бы сделать, для IE самое главное. Я почитал, и как понял что window.addEventListener("DOMContentLoaded", function() в IE может не работать. На этом сайте, нашел Событие DOMContentLoaded не поддерживается в IE8-, но почти все фреймворки умеют его эмулировать. Если нужна отдельная функция только для кросс-браузерного аналога DOMContentLoaded – можно использовать jquery.documentReady.js. |
Цитата:
|
Часовой пояс GMT +3, время: 05:41. |