Новая функция управления кэш-памятью DOM: по умолчанию включена
Поскольку для перехода по анимированной странице требуется, чтобы страницавы находитесь, и тот, к которому вы переходите, находится в DOM, мы добавляем страницы в DOM, когда вы перемещаетесь.До сих пор эти страницы оставались в DOM до тех пор, пока вы не выполнили полное обновление страницы, поэтому всегда возникало опасение, что мы можем достичь потолка памяти на некоторых устройствах и вызвать замедление работы браузера или даже его сбой.
Для бета-версии 2 мы добавили простой механизм для поддержания чистоты DOM.Это работает так: всякий раз, когда страница загружается через Ajax, она помечается для удаления из DOM, когда вы переходите на другую страницу (технически, на шкуре страницы).Если вы вернетесь на удаленную страницу, браузер сможет извлечь файл из своего кэша или при необходимости повторно запросит его у сервера.В случае вложенных списков мы удаляем все страницы, которые составляют вложенный список, после перехода на страницу, которая не является частью списка.Страницы, включенные в многостраничную настройку, не будут затронуты этой функцией вообще - jQuery Mobile управляет только страницами, внесенными Ajax.
Новая опция страницы, называемая domCache, определяет, следует лиоставьте страницы в DOM как способ их кеширования (как обычно) или сохраните DOM в чистоте и удалите скрытые страницы (по-новому).По умолчанию для domCache установлено значение false, что позволяет активно управлять размером DOM.Если для этого параметра установлено значение true, вам нужно позаботиться о том, чтобы самостоятельно управлять DOM и тщательно тестировать на нескольких устройствах.
Чтобы установить параметр domCache на отдельных страницах для выборочного кэширования страницы, выМожно либо добавить атрибут data-dom-cache = "true" в контейнер страницы, либо установить его программно следующим образом:
elem.page({ domCache: true });
Параметр domCache также можно установить глобально.Вот как можно снова включить кеширование DOM, чтобы оно работало так, как оно было изначально:
$.mobile.page.prototype.options.domCache = true;