JavaScript - базовая перезапись URL + создание записи в истории - PullRequest
0 голосов
/ 23 апреля 2010

Вот ситуация. У меня есть сайт, где нажатие гиперссылок внутри определенного div позволяет функции jQuery получать содержимое div с отдельной страницы. Из-за этого URL не меняется. Мне нужно, чтобы это изменилось, как и запись в истории.

Мои страницы настроены так (не уверен, что это самый умный способ продвижения)

  • access.php (основной вход)
  • новый-user.php
  • забыл-pass.php
  • index.php
  • controlpanel.php

etcetc. Теперь все эти страницы доступны сами по себе и, в основном, идентичны и содержат div, называемый «контейнер». При щелчке по ссылкам содержимое этого раздела стирается, а содержимое из базового элемента (контейнера) загружается из файла URL (href). Я ужасно объясняю ..

Итак, в общем, мне нужен какой-то javascript, который берет адрес ссылки href и просто вставляет его в строку URL одновременно с созданием записи в истории, чтобы работали кнопки «назад» и «вперед».

Я планирую также расширить это время, переводя строки запросов. Но есть несколько постоянных статических страниц, о которых мне нужно позаботиться в первую очередь. Любая помощь будет принята с благодарностью! :)

Ответы [ 3 ]

1 голос
/ 23 апреля 2010

Вам не разрешено изменять весь URL-адрес с помощью JavaScript, но вы можете использовать URL-хэши . Я рекомендую вам плагин истории браузера . Вы можете просто зарегистрировать обработчик, чтобы реагировать на изменения URL и загружать соответствующий контент через ajax.

0 голосов
/ 23 апреля 2010

Это невозможно с "обычными URL-адресами" (мы должны ждать браузеры нового поколения ...)

Но есть «хитрость»: играть с якорями. Ссылка типа «same_page.php # anchor» не перезагружает страницу, но действует как на историю, так и на адресную строку.

Итак, если вместо URL, например, "page.php? Param = lorem", вы можете использовать "page.php # param = lorem", у вас есть решение:)

0 голосов
/ 23 апреля 2010

Вы смотрели на плагин jquery address ?Посмотрите на примеры. это похоже на то, что вы хотите?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...