Я работаю над 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 запускался только один раз?
Edit: после прочтения моего собственного вопроса я увиделчто это было немного неясно.Моя главная проблема заключается в том, что когда я возвращаюсь домой, мой первый экземпляр setInterval уже запущен, и запускается второй, в результате чего автоматическое обновление выполняется за 5 секунд быстрее, и оно будет выполняться все быстрее и быстрее каждый раз, когда яизмени страницу и вернись домой.Это не то поведение, которое я хочу.Что мне нужно, это ОСТАНОВИТЬ экземпляр setInterval, когда я изменяю содержимое в div, и перезапустить его, когда я вернусь домой.