Возможно ли сохранить мои (глобальные) переменные при перезагрузке страницы? Если да, то как?
Спасибо за любую помощь. С наилучшими пожеланиями.
Возможно ли сохранить мои (глобальные) переменные при перезагрузке страницы? Если да, то как?
Спасибо за любую помощь. С наилучшими пожеланиями.
Попробуйте эту функцию javascript без файлов cookie.
Он в основном сохраняет ваши данные в свойстве window.name
, который не очищает значение при перезагрузке страницы или переходит на другой сайт.
Вы можете сохранять данные через перезагрузку страниц через нечто вроде window.localStorage
, window.sessionStorage
(проприетарное расширение Mozilla) или абстракцию базы данных (window.openDatabase
), предоставляемую некоторыми браузерами на основе WebKit. См. эту статью о MDC для приятного обзора интерфейсов хранения и this WebKit статьи о введении их базы данных.
В том же стиле вы можете хранить строковые значения в хэш-ключе.
Используя свойство:
window.location.hash = 'flight/105';
Затем при обновлении страницы вы инициализируете свои переменные.
Среда JavaScript будет reset, когда браузер покинет вашу страницу. Тем не менее, вы можете зарегистрировать обработчик onUnload для сериализации вашего массива в файл cookie, а затем проверить его каждый раз, когда страница будет загружена, и неэтериализовать ее, если она есть.
В вашем браузере есть кнопка reset, или вы имеете в виду кнопку перезагрузки?
Когда страница загружается, все загружается свежей. С любой предыдущей страницы ничего не осталось. Единственное место для хранения всего, что сохранилось при загрузке страницы, находится в файле cookie.
Обратите внимание, что количество данных, которое вы можете поместить в файлы cookie, ограничено несколькими килобайтами на сайт. Точный предел варьируется от браузера к браузеру, но вы не можете ожидать, что сможете добавить более чем килобайт или две ценности данных в файлы cookie.
Вы говорите о Cookies? Если это так, вы можете просмотреть этот модуль с открытым исходным кодом
Это позволит вам хранить файлы cookie, то есть данные, даже после перезагрузки браузера. Это делает его очень легким, и это то, что я использую.
var cookie = new HTTP.Cookies();
cookie.write('mydata', 'myvalue', '+1y');
//later on you can get that data EVEN AFTER a reload
var x = cookie.read('mydata');
Вы, вероятно, не должны пытаться делать куки-версию с нуля, но потому, что это очень больно, и вам нужно много тестировать в веб-браузерах, например, чтобы Internet Explorer работал.