Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 24.04.2015, 06:56
Аспирант
Отправить личное сообщение для Evgeny_Dedov Посмотреть профиль Найти все сообщения от Evgeny_Dedov
 
Регистрация: 14.07.2013
Сообщений: 32

Можно ли добавить элемент во всю историю браузера
Здравствуйте.
Помогите пожалуйста как можно "победить" такой момент.

Есть инет магазин.
Выводятся товары списком.

Нажимаем на какой нибудь товар - переходим в подробное описание этого товара, там все фотки, текст и т.д.. И тут же кнопка "Положить в корзину". Сама корзина у меня сделана полностью на AJAX.

То есть чел нажал на кнопку "в корзину" в шапке сайта в корзине появился этот товар, кол-во сумма, и тд.

Проблема в том что если нажать кнопку "Назад" в браузере или тоже самое на javaScript history.back(-1), то при переходе на пред идущую стр. в корзине не чего не отображается, потому что в истории этого элемента нет.

Подскажите как можно победить такой момент, я уже всю голову сломал. Спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 24.04.2015, 08:45
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,215

Сообщение от Evgeny_Dedov
как можно победить такой момент, я уже всю голову сломал
Голову ломать не нужно. Достаточно просто сделать запрос на сервер о данных той корзины. При получении ответа - просто ее перерисовать.
Ответить с цитированием
  #3 (permalink)  
Старый 24.04.2015, 18:45
Аспирант
Отправить личное сообщение для Evgeny_Dedov Посмотреть профиль Найти все сообщения от Evgeny_Dedov
 
Регистрация: 14.07.2013
Сообщений: 32

Да том то и дело, что браузер достаёт стр. из истории он не делает запросов при нажатии на кн. "Назад".

То есть если просто сделать переход прямой на эту стр. то корзина обновится как положено с сервера, а мне нужно именно по кнопки "Назад"

Объясню почему, тут всё просто. Есть список он может быть длинным, при переходе в товар и обратно чел должен оставаться в том месте скролинга страницы где был, а так получается только при history.back()

Ну или у меня есть вариант, писать в куку текущий скрол и в товарах прокручивать до этого места, но уж очень не хочется городить тупое решение.
Ответить с цитированием
  #4 (permalink)  
Старый 27.04.2015, 09:45
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,215

Сообщение от Evgeny_Dedov
Да том то и дело, что браузер достаёт стр. из истории он не делает запросов при нажатии на кн. "Назад".
Ты делай запрос. Причем тут браузер?
Сообщение от Evgeny_Dedov
очень не хочется городить тупое решение
Городи острое. Все в твоих руках...
Ответить с цитированием
  #5 (permalink)  
Старый 02.05.2015, 08:57
Аспирант
Отправить личное сообщение для Evgeny_Dedov Посмотреть профиль Найти все сообщения от Evgeny_Dedov
 
Регистрация: 14.07.2013
Сообщений: 32

Сообщение от ksa Посмотреть сообщение
Ты делай запрос. Причем тут браузер?

Городи острое. Все в твоих руках...
Прежде чем давать острые ответы, Вы хотя бы въёхали бы в вопрос
Ответить с цитированием
  #6 (permalink)  
Старый 05.05.2015, 13:45
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,215

Сообщение от Evgeny_Dedov
Вы хотя бы въёхали бы в вопрос
Как тут въехать! Он же такой сложный...
Может тебе пора въезжать в ответ?
Ответить с цитированием
  #7 (permalink)  
Старый 06.05.2015, 07:41
Аспирант
Отправить личное сообщение для Evgeny_Dedov Посмотреть профиль Найти все сообщения от Evgeny_Dedov
 
Регистрация: 14.07.2013
Сообщений: 32

Попробуйте "посадить" на стр. $(function(){AJAX...}) AJAX запрос.
И попробуйте перейти на неё по кнопки "Назад" или history.back();

Запрос НЕ выполнится !!!
Ответить с цитированием
  #8 (permalink)  
Старый 06.05.2015, 08:22
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,215

Сообщение от Evgeny_Dedov
Попробуйте "посадить" на стр. $(function(){AJAX...}) AJAX запрос.
И попробуйте перейти на неё по кнопки "Назад" или history.back();

Запрос НЕ выполнится !!!
Конечно же я этого не знаю! Но к счастью это не единственный способ вызывать некие функции...
"Посади" запрос с использованием setInterval() и будет тебе счастие...
Ответить с цитированием
  #9 (permalink)  
Старый 06.05.2015, 09:47
Аспирант
Отправить личное сообщение для Evgeny_Dedov Посмотреть профиль Найти все сообщения от Evgeny_Dedov
 
Регистрация: 14.07.2013
Сообщений: 32

То есть, вы предлагаете херачить запросы через промежуток времени не зависимо от того - нужно это или нет?
Ответить с цитированием
  #10 (permalink)  
Старый 06.05.2015, 10:23
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,584

Evgeny_Dedov,
Как выяснить "нужность" запроса - это уже вам решать, но примерно так все с этой ситуацией и разбираются.
__________________
29375, 35
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как добавить элемент в XML через DOM используя PHP? bayah Серверные языки и технологии 6 11.08.2010 13:33
Как можно удалить динамически созданный элемент Арсений Элементы интерфейса 18 08.07.2010 12:56
Можно ли установить указатель мыши в любое место окна браузера? DVVID Events/DOM/Window 8 24.02.2010 12:37
Как можно изменить URL в адресной строке браузера? балерун Events/DOM/Window 12 17.11.2009 13:08
Как можно найти разрешение рабочей области браузера? Влад Общие вопросы Javascript 3 20.07.2009 10:18