Я создал приложение с несколькими внутренними страницами, например:
<div id="states" data-role="page">
<div data-role="header"> <a href="#" onClick="parent.history.back()" data-icon="back">Back</a>
<h1>My List</h1>
</div>
<!-- /header -->
<div data-role="content"></div>
<!-- /content -->
<div data-role="footer" data-position="fixed" data-id="myfooter">
<div data-role="navbar">
<ul>
<li><a href="#" data-icon="gear">Option</a></li>
<li><a href="#" data-icon="home">Home</a></li>
<li><a href="#" data-icon="search">Search</a></li>
</ul>
</div>
<!-- /navbar -->
</div>
<!-- /footer -->
</div>
<!-- /page -->
Когда страница инициализируется, я загружаю файл XML и динамически заполняю страницы.Это отлично работает.Если я обновлю экран на внутренней странице по умолчанию, он перезагрузится без проблем.Я могу зайти на одну или две страницы глубиной, нажать кнопку «назад» ... и это тоже работает.Я использую этот код для ведения своей истории хэшей (я нуб).
$(document).bind( "pagebeforechange", function( e, info ) {
if ( typeof info.toPage === "string" ) {
var u = $.mobile.path.parseUrl( info.toPage ),
re = /^#.../;
if ( u.hash.search(re) !== -1 ) {
buildLists( u, info.options );
e.preventDefault();
}
}
});
Проблема возникает, когда я перехожу на другую страницу и нажимаю обновить, мои данные возвращаются как неопределенные, и все моивызовы data.find (...) являются недействительными, что приводит к ошибкам.
У кого-нибудь была такая проблема?Как я могу убедиться, что мои данные либо а) сохранены, либо б) перезагружены.Я что-то упускаю?
Я изучил этот код , но это не так динамично, как мне требуется.Все мои списки заполнены через XML.