В веб разработке я недавно и еще не усвоил всю техническую сторону вопроса реализации веб-приложений, по-этому хотелось-бы узнать варианты реализации задуманного. Суть такова: есть сайт, необходим таймер, который давал-бы возможность беспрепятственно пользоваться сайтом, переходить по страницам и т.д., сам работая где-то параллельно и показывая сколько времени осталось. По истечению срока - вызывал-бы пхп скрипт. При этом, что-бы его можно было остановить при необходимости раньше. Буду признателен.
Почти все реализации JavaScript имеют внутренний таймер-планировщик, который позволяет задавать вызов функции через заданный период времени. Функция setTimeout.
Нет, достаточно просто, чтобы он продолжал выполняться при переходе на другую страницу. По этому примеру не понял, на что смотреть... Что там подтверждает, что скрипт продолжает выполнение? Я нажал на кнопку (по идее ч-з 3 секунды должен всплыть алерт), до того как он всплывет я открываю в той-же вкладке другую страницу - алерт не появляется. Это как раз то, о чем я говорю.
e_danilchenko: Понятно, я думал вы про переход на другие вкладки/сворачивание окна браузера. Если страница будет перезагружаться, тогда нужно как то сохранять таймер в localStorage, а после загрузки страницы вновь его оттуда восстанавливать делая поправку на прошедшее время. Не видел такого, но по-моему легко сделать. Посмотри тут stackoverflow.com/questions/30498312/countdown-tim...
В целом, то, что касается отсчета времени я понял... А вот как реализовать остальное, такое как выполнение скрипта после ухода с вызвавшей его страницы и визуализацией оставшегося времени?
Прямой ответ: ни как.
Когда посетитель покидает страницу, все скрипты прекращают работу.
Этот принцип не изменить.
Отслеживая время, и пользуясь куками, что-то можно перенести при навигации между страницами.
Если же вам необходим скрипт работающий при переходе между страницами, варианта только два:
1) Использовать frame. Но сейчас это моветон.
2) Использовать подгрузку DOM страниц через ajax.