Я работаю над div (родительским), который имеет два других div (меню и содержимое), как показано ниже:
<div id="parent">
<div id="menu"></div>
<div id="content"></div>
</div>
Содержимое, загруженное в div содержимого, представляет собой html-файл, в котором есть несколько Функции javascript, такие как автоматическое обновление, которое перезагружает его содержимое каждые 5 секунд.
$(document).ready(function () {
setInterval(function () {
grid.reloadDefaultContent(); //this reloads the content on content div.
}, 5000);
}
На странице есть несколько ссылок, которые загружают различное содержимое в div содержимого. Пока все хорошо, пока я не вернусь в «дом», где есть функция автообновления. Проблема в том, что автоматическое обновление никогда не прекращалось, и теперь, когда я снова щелкнул, чтобы вернуться домой, функция запускается дважды (или сколько раз я меняю страницу и возвращаюсь домой), устанавливая сеанс.
Я загружаю страницы с помощью jQuery $. Load ()
.
Есть идеи, как я могу заставить этот экземпляр setInterval запускаться только один раз?
Изменить: прочитав свой вопрос, я увидел, что это было немного непонятно. Моя основная проблема заключается в том, что когда я возвращаюсь домой, мой первый экземпляр setInterval уже запущен, а второй запускается, в результате чего автоматическое обновление, которое длилось 5 секунд, идет быстрее, и оно будет происходить все быстрее и быстрее каждый раз, когда я смените страницу и вернитесь на главную. Я не хочу такого поведения. Мне нужно ОСТАНОВИТЬ экземпляр setInterval, когда я меняю содержимое в div, и перезапустить его, когда вернусь домой.