Я добавляю модели в мою коллекцию моделей приложений js, используя вызовы ajax. когда я нажимаю модель и перехожу на следующую страницу, я хочу, чтобы все модели, которые я загрузил, все еще были там, когда я нажимал кнопку «Назад». Каков наилучший способ сделать это, чтобы он работал на всех браузерах? это для мобильной сети. Я не могу найти прямой ответ, как я могу использовать bfcache или историю js, или есть другой, лучший способ?Как сохранить/кешировать дом, чтобы страница загружалась как есть, когда вы нажимаете кнопку «Назад»?
ответ
Вы можете хранить их в локальном хранилище и AJAX для них только тогда, когда не существует на локальном хранилище
Таким образом, вместо того, чтобы использовать регулярный $ .ajax, использовать это для Аякса, который вы хотите закэшированный:
function storageBasedAjax(url,cb){
if (localStorage.getItem("myAxaxCache_"+url)){
cb(localStorage.getItem("myAxaxCache_"+url));
return;
}
$.ajax({url: url, success: function(result){
localStorage.setItem("myAxaxCache_"+url,result);
cb(result);
}});
}
Просто помните, что вы не хотите, чтобы над нагрузкой, поэтому если у вас есть URL с параметром меняющегося каждый вызов, не используйте это или вы будете перегружать локальное хранилище
Я уверен, что браузер не сохраняет содержимое Ajax при использовании обратно по умолчанию. – niandrei
Это экономит его на наличные деньги, не связанные с кнопкой возврата. –
браузер в настоящее время не сохраняет ничего на мобильном сафари на ios –
- 1. IE не запускает Javascript, когда вы нажимаете кнопку «назад»
- 2. Как вы создаете iframe, когда вы нажимаете кнопку
- 3. Когда вы нажимаете кнопку, текст исчезает
- 4. Как выжать сообщение, когда вы нажимаете на отключенную кнопку?
- 5. Как выйти из приложения cordova (android), когда вы нажимаете кнопку «Назад» от Inappbrowser?
- 6. Applescript: подождите, чтобы страница загружалась на хром
- 7. Использует Java-апплет, чтобы страница загружалась медленнее?
- 8. javascript событие, когда вы нажимаете «назад» на страницу?
- 9. Как изменить кнопку в текстовом формате, когда нажимаете кнопку
- 10. Скрыть кнопку удаления, когда вы нажимаете внешний вид.
- 11. Показать коробку с заголовком, когда вы нажимаете кнопку
- 12. Как убрать PopupWindow, когда вы нажимаете на него?
- 13. Как изменить этот скрипт, чтобы страница 2 загружалась из iframe?
- 14. Посмотрите, какая функция (javascript) используется, когда вы нажимаете кнопку
- 15. Android - рисование круга каждый раз, когда вы нажимаете кнопку
- 16. Что именно происходит, когда вы нажимаете кнопку «играть» в Unity?
- 17. Событие, требующее триггера, когда вы нажимаете кнопку внешнего доступа
- 18. Как сделать кнопку «Назад», когда вы переходите в приложение «Угловое»?
- 19. updateprogress не отображается, когда вы нажимаете кнопку внутри панели обновления?
- 20. Когда вы нажимаете на кнопку, загружайте страницы с обьяснением
- 21. JavaApplet, когда вы нажимаете кнопку/щелкните по изображению
- 22. кнопку назад не перегрузочные страница
- 23. SPRING MVC получает ошибку 404, когда вы нажимаете кнопку отправки
- 24. Выполните действие, когда вы нажимаете кнопку физического меню
- 25. Использование ajax для печати «Hello World!» когда вы нажимаете кнопку
- 26. Назад к приложению, когда нажимаете на уведомление
- 27. Как вы нажимаете кнопку JavaScript с помощью питона селеном
- 28. Есть ли меню меню open class, когда вы нажимаете его?
- 29. Нажмите кнопку «Назад» в браузере Истекает страница
- 30. Как вы нажимаете кнопку в элементе управления веб-браузером?
по крайней мере, светлячок фактически восстанавливает (DOM и javascript), если он все еще находится в bf кеш, если только это не было подавлено некоторыми обработчиками событий. – the8472
Я не думаю, что кто-то будет использовать FF на мобильном телефоне, хотя, пытаясь заставить это работать на сафари и хром, в основном для пользователей iOS и Android для мобильных телефонов –