Постоянный контент при посещении другой страницы в jQuery (постоянное переключение)

StackOverflow https://stackoverflow.com/questions/3891870

Вопрос

Когда я изменяю содержимое сайта с помощью переключателя или какой-либо другой функции, состояние не сохраняется.Итак, если это моя страница:

<div id='test'></div>
<input type='submit' value='test'>
<a href='http://www.stackoverflow.com'>link to elsewhere</a>​

и это есть в моем готовом коде:

$(':submit').click( function() {
  $('#test').text( 'this is a test' );
});

когда я нажму кнопку отправки, div будет заполнен надписью "это тест".Когда я перейду по ссылке на stackoverflow и нажму "назад", DIV снова будет пустым.Как я могу сделать DIV постоянным при переходе на другую страницу, подобно тому, как <input> элементы являются постоянными (т.е.если я введу текст в <input type='text'/> и перейдите по ссылке, этот текст все еще будет там, когда я нажму "назад")

В конце концов, я хочу сохранить состояние переключателя...или я должен использовать файлы cookie для решения этой проблемы, что означает, что я должен написать свою собственную функцию переключения, что не является большой проблемой, но я бы предпочел не использовать файлы cookie...люди все еще параноики

Это было полезно?

Решение

Да, вы можете использовать файлы cookie, хэш URL-адреса или указать состояние в виде строки в поле "window.name".Конечно, независимо от того, где вы храните свое состояние, вам нужно извлечь его при загрузке и сбросить состояние туда, где оно было.

Одна приятная вещь в window.name если вы можете поместить туда целые страницы HTML, затем перезагрузите их обратно в DOM, включая предыдущее состояние.Конечно, другие страницы могут перезаписываться "window.name" поэтому вам нужен план Б, когда это произойдет.

"Хэш URL" довольно полезен и может быть использован и с AJAX.

Подробнее: http://code.google.com/web/ajaxcrawling/docs/specification.html

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top