Я работаю над небольшой игрой в JQuery в свое свободное время, чтобы узнать JQuery. Базовая концепция добавляет точки каждый раз, когда таймер тикает и обновляет счет, который хранится в файле cookie. Это таймер, который обрабатывает большинство от обновлений:Остановить таймер Jquery от запуска дважды на нескольких страницах браузера
setInterval(mainTimer, 1000); //set timer
function mainTimer(){
createPage(); //updates the page variables and shows the score
addValues(); //increases the values
}
Проблема у меня в том, что люди могут просто открыть несколько страниц и таймер будет вызывать для каждой из этих страниц. Поэтому, если у вас открыто 4 страницы, оценка будет обновляться в 4 раза быстрее.
Я искал много разных вещей, но я не могу найти ничего, что сработает. Способ сделать это был бы признаком того, как я догадываюсь, но я честно не знаю, с чего начать, поэтому любая помощь ценится.
Я прочитал что-то о функции open.window, чтобы проверить существующие окна, но я не мог ничего конкретного.
open.window("foo","bar");
Спасибо, это определенно может работать. И да, я знаю, что его легко обмануть, но он позволяет открывать несколько вкладок - это просто немного: p – Crecket
Тем не менее, есть причина, по которой вы не просто сохраняете счет в локальной переменной? – DrunkWolf
Я понял, что это неправильный путь. Я просто добавил таймер для сохранения каждые несколько секунд вместо прямого обновления cookie. Спасибо за помощь – Crecket