Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.08.2013, 16:35
Интересующийся
Отправить личное сообщение для lekba Посмотреть профиль Найти все сообщения от lekba
 
Регистрация: 26.05.2013
Сообщений: 22

Как отследить событие смены локального времени пользователем?
нужно отследить и обработать событие, если пользователь сменил локальное время или браузер завис не менее 5 секунд
как проще всего это сделать?
возможно есть готовая функция такого события?
Ответить с цитированием
  #2 (permalink)  
Старый 05.08.2013, 16:50
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

а есть какие то наброски, где вы это хотите применить?
Ответить с цитированием
  #3 (permalink)  
Старый 05.08.2013, 17:21
Интересующийся
Отправить личное сообщение для lekba Посмотреть профиль Найти все сообщения от lekba
 
Регистрация: 26.05.2013
Сообщений: 22

есть небольшой алгоритм будущей функции:
событие функции отслеживается раз в 1000мс через основную функцию setTimeout
в отдельной переменной, назовем ее "var prev" хранить снимок new Date().getTimestamp()
затем каждый вызов основной функции setTimeout проверять разницу, например
if current_time_sec - prev > 5 // then event
else var prev = new Date().getTimestamp()

вот, сейчас пробую реализовать
Ответить с цитированием
  #4 (permalink)  
Старый 05.08.2013, 17:25
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

ну тогда уж лучше я думаю через setInterval))
Ответить с цитированием
  #5 (permalink)  
Старый 05.08.2013, 17:34
Интересующийся
Отправить личное сообщение для lekba Посмотреть профиль Найти все сообщения от lekba
 
Регистрация: 26.05.2013
Сообщений: 22

Сообщение от skrudjmakdak Посмотреть сообщение
ну тогда уж лучше я думаю через setInterval))
предложенный мной выше алгоритм является "костылями", думал есть что-то покрасивее, поэтому полез спросить на форум
Ответить с цитированием
  #6 (permalink)  
Старый 06.08.2013, 01:01
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

var tstDat = +new Date();
setInreval(function(){
   var dDelta = +new Date()-tstDat;
   if(dDelta<4000 || dDelta > 6000) {alert('Cбой по дате!');}
   tstDat=+new Date();
},5000}

Последний раз редактировалось Deff, 06.08.2013 в 01:24.
Ответить с цитированием
  #7 (permalink)  
Старый 06.08.2013, 09:26
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

Сообщение от Deff Посмотреть сообщение
var tstDat = +new Date();...
опа.. а что за плюсик такой?? перед new.. первый раз такую реализацию вижу
Ответить с цитированием
  #8 (permalink)  
Старый 06.08.2013, 23:27
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

Сообщение от skrudjmakdak
опа.. а что за плюсик такой?? перед new.. первый раз такую реализацию вижу
не всегда что-то причём
http://es5.javascript.ru/x11.html#x11.4.6
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как проверить, поддерживается ли событие? FINoM Общие вопросы Javascript 44 31.12.2011 17:19
Как вызвать событие после события определенного в onchange Наталья Events/DOM/Window 2 12.09.2009 13:51
как проверить поддеружет браузер определенное событие? GOll Элементы интерфейса 9 24.07.2008 14:40
Как вставить событие внутрь document.write Vivasvan Events/DOM/Window 8 13.06.2008 20:02
Как обработать событие Cresh Events/DOM/Window 1 31.05.2008 06:17