У меня есть два одинаковых HTML-страниц (index.html и page1.html), которые содержат две кнопки:кнопку Назад с JavaScript/JQuery
<ul data-role="listview" data-inset="true" class="ui-listview ui-listview-inset ui-corner-all ui-shadow">
<li class="ui-body ui-body-b ui-li-static ui-body-inherit ui-last-child">
<fieldset class="ui-grid-a">
<div class="ui-block-a">
<button id="submit" type="submit" class="ui-btn ui-btn-a ui-corner-all">Submit</button>
</div>
<div class="ui-block-b">
<button id="cancel" data-direction="reverse" type="submit" class="ui-btn ui-btn-a ui-corner-all">Cancel</button>
</div>
</fieldset>
</li>
</ul>
Если одна кнопка меняется на второй странице, и вторая кнопка действует как кнопка «Назад». (В идеале вы можете использовать первую кнопку для перехода на вторую страницу, а затем использовать кнопку возврата на второй странице, чтобы вернуться к первому.)
Я управляю этим с помощью JavaScript (это относится только к index.html кнопки, но page1.html JS идентичен):
$(document).on('click', '#submit', function() {
$(":mobile-pagecontainer").pagecontainer("change", "page1.html", {
transition: 'slide',
changeHash: true
});
});
$(document).on('click', '#cancel', function() {
parent.history.back();
//$.mobile.back();
});
Но ничего я стараюсь не похоже на работу. Я знаю, что программа достигает parent.history.back();
, потому что я установил точки останова в консоли, но кроме этого я понятия не имею, почему он не вернется на первую страницу.
Даже когда я меняю его на 'window.history.back();', он все равно не переводит между страницами. – user3413170
Это потому, что вы являетесь отправкой, и вам нужно предотвратить поведение по умолчанию, я обновил ответ для него –