Держите модальное окно Bootstrap открытым с помощью кнопки «Назад» в браузере

Есть ли способ оставить модальное окно начальной загрузки открытым, когда вы покидаете страницу с ним, а затем возвращаетесь на указанную страницу с помощью кнопки «Назад» вашего браузера?


person Lauren F    schedule 09.01.2015    source источник
comment
Вы имеете в виду появление модального окна на странице вашего сайта, затем, скажем, перейти на Google.com, а затем нажать кнопку «Назад», чтобы вернуться на свой сайт, и модальное окно все еще открывается? В любом случае, что вы сделали, чтобы попытаться решить проблему самостоятельно? Наконец, стесняясь хранить что-то на машине пользователя, ответ, скорее всего, нет.   -  person MattD    schedule 09.01.2015
comment
@MattD Да, сценарий Google - прекрасный пример. Я искал решение, но ничего не реализовал - я пытаюсь помочь другу с несколькими проблемами на его личном сайте.   -  person Lauren F    schedule 09.01.2015
comment
Стесняясь хранить что-то о сеансе пользователя, когда он уходит со страницы, содержащей модальное окно, которое вы хотите открыть, я действительно не думаю, что есть способ сделать то, что вы хотите. Поскольку модальное окно является частью самой страницы, а не продуктом, создаваемым браузером, оно исчезает, когда вы покидаете страницу.   -  person MattD    schedule 09.01.2015


Ответы (1)


Вы должны прочитать о так называемом bfcache, см. Есть ли кроссбраузерный onload при нажатии кнопки «Назад»? и Как предотвратить отображение контента из кеша Back-Forward в Firefox? тогда вы должны понимать, что bfcache сохранил все состояния вашей страницы (включая состояние JS, DOM). Таким образом, открытое модальное окно должно быть сохранено открытым в bfcache и поэтому должно быть открыто при переходе назад. Вы обнаружите, что ваше модальное окно закрыто, и что происходит?

Переход на другую страницу (например, нажатием ссылки) вызывает закрытие модального окна (и bfcache сохраняет страницу с закрытым модальным окном)

Возможные решения:

  1. предотвратить закрытие вашего модального окна при нажатии за его пределами (см.: Предотвратить исчезновение Bootstrap Modal при щелчке снаружи или нажатии клавиши Escape?)
  2. включить сеанс и отключить bfcache (запустить перезагрузку при переходе назад) повторно открыть модальное окно, когда пользователь уже посетил страницу в соответствии с информацией о вашем сеансе
person Bass Jobsen    schedule 10.01.2015