Зависит от того, как вы загружаете соответствующие страницы.
Если вы используете rel = "external" - без AJAX, каждая страница будет полностью перезагружена.
Если вы используете обычный JQM - AJAX, JQM захватит страницу и прикрепит ее к существующей DOM. Думайте о своей первой странице как о своей «якорной» странице, которая добавляет / удаляет все последующие страницы.
Во втором случае вы можете указать атрибут data-append-to-all-pages = "true" для элементов, которые вы хотите иметь на каждой странице.
Затем просто прослушайте соответствующее событие (pagebeforeshow?) И добавьте элементы с надписью выше на новую страницу, прежде чем она будет показана. Таким образом, элементы должны быть установлены только на первой странице, а затем автоматически добавлены на любую последующую страницу, которая загружается и добавляется в DOM.
Я смотрю на это прямо сейчас с помощью формы входа в систему, которая мне нужна на каждой странице за пределами входа в систему и должна избегать дублирования ввода # someID.
РЕДАКТИРОВАТЬ - возможное решение
Поместите соответствующий элемент на первую страницу и добавьте уникальные атрибуты, например:
<div data-role="navbar" data-unique="true" data-unique-id="log">
// full navbar
</div>
Все остальные страницы просто получают уникальный контейнер элемента
<div data-role="navbar" data-unique="true" data-unique-id="log"></div>
Тогда используйте этот скрипт:
$('div:jqmData(role="page")').live('pagebeforehide', function(e, data) {
// check page you are leaving for unique items
$(this).find('div:jqmData(unique="true")').each(function(){
// more or less 1:1 stickyFooter
var uniqueID = $(this).jqmData("unique-id"),
nextPage = data.nextPage,
nextUnique = nextPage && nextPage.find( "div:jqmData(unique-id='"+uniqueID+"')" ),
nextMatches = nextUnique.length && nextUnique.jqmData('unique-id') === uniqueID;
// if unique items on previous and new page are matching
if ( uniqueID && nextMatches ) {
nextUnique.replaceWith( uniqueID );
$(this).jqmData("unique-id").empty();
}
});
});
Конечно, это означает, что вам нужен уникальный контейнер на каждой странице. Но тогда вы просто будете нести его содержимое, проходя через приложение. Должен работать для меня и избегать иметь ту же форму входа в систему 2+ раза внутри DOM.
Кроме того, вы можете свободно редактировать его содержимое, например, добавляя активный класс.