Sto usando jquery mobile con PhoneGap. La mia app ha due pagine: pagina di accesso e pagina di elenco. Al login con successo, l'utente andrà alla pagina di elenco. Successivamente, quando premono il pulsante Indietro sul proprio telefono (Android), torneranno alla pagina di accesso. Non voglio un comportamento come questo. Quello che voglio è uscire dall'app.Jquery mobile, rimuovere la pagina precedente
risposta
Come ho risposto in questa domanda: page hash and backbutton issue phonegap+Jquery
È possibile modificare le pagine senza il loro mantenimento in cronologia del browser in questo modo:
$.mobile.changePage('#page', {reverse: false, changeHash: false});
Purtroppo, non sono riuscito ad impedire che la pagina iniziale da rimanere nella cronologia del browser, così ho usato una soluzione: il layout
Pagina:
<body>
<!-- page_1 before page_loading in source -->
<div data-role="page" id="page_1">
</div>
<!-- page_loading will be shown first -->
<div data-role="page" id="page_loading">
<div data-role="content">
<h1 >
<b>welcome</b>
</h1>
</div>
</div>
<div data-role="page" id="page_2">
</div>
</body>
jQuery:
function onBodyLoad()
{
//go to page_loading before deviceready without keeping it in browser history
$.mobile.changePage('#page_loading', {reverse: false, changeHash: false});
document.addEventListener("deviceready", onDeviceReady, false);
}
function onDeviceReady()
{
//your initialization code here...
//now go to page_1 without keeping it in browser history since the actual first page was #page_1 already
$.mobile.changePage('#page_1', {reverse: false, changeHash: false});
//your code here...
}
Questo dovrebbe soddisfare le vostre esigenze, basta provare. "#page_loading" sarebbe la vostra pagina di login, "PAGE_1" la vostra pagina della lista ...
Aggiunta di opzioni per inverso e changeHash non ha funzionato per me. utilizzando Cordova v1.6
Ho finito col sovrascrivere il metodo onTouch nella mia attività Android.
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
if (KeyEvent.KEYCODE_BACK == keyCode) {
// Clear browsers history if user clicks back button
clearHistory();
}
return super.onKeyUp(keyCode, event);
}
Tenete a mente che changeHash: falso si riferisce alla pagina di destinazione , non la fonte. Non rimuoverai la pagina di origine dalla cronologia. Al contrario, l'hash la storia non verrà aggiornato quando si spostano alla nuova pagina
Se si utilizza l'ultima versione di jQuery Mobile (1.4+) è possibile utilizzare questo script:
$.mobile.pageContainer.pagecontainer('change', '#page', {reverse: false, changeHash: false});
jQuery.mobile.changePage
è deprecato a partire dal jQuery Mobile 1.4.0 e sarà rimosso in 1.5.0.
- 1. jQuery Mobile: Ottenere l'ID della pagina precedente
- 2. jQuery Mobile NavBar con pulsante indietro della pagina precedente
- 3. Come rimuovere lo sfondo della pagina per Jquery Mobile Dialog?
- 4. jQuery Mobile aggiorna la pagina dopo changePage
- 5. altezza pagina jQuery mobile
- 6. Come rimuovere elementi da listview JQUERY mobile
- 7. jQuery Mobile CSS3 Transizioni di pagina senza jQuery Mobile Library
- 8. Jquery mobile - ordine eventi pagina
- 9. jQuery Mobile naviga o cambia pagina?
- 10. jQuery Mobile “Errore di caricamento pagina”
- 11. Jquery Mobile - Lento con transizioni di pagina
- 12. JQuery Mobile rimuove la transizione della pagina di diapositiva
- 13. Ridimensionamento della pagina Jquery Mobile durante la transizione delle pagine
- 14. Altezza pagina errata in jQuery Mobile
- 15. JQuery-Mobile
- 16. jquery-mobile "mobile first"
- 17. Cambio pagina mobile Jquery con pulsante indietro non funzionante
- 18. Come ottenere l'URL della pagina precedente utilizzando jquery
- 19. jQuery datepicker per impedire la data precedente
- 20. iOS5 + transizione jquery-mobile lampeggia
- 21. jQuery Mobile come rimuovere il cerchio rotondo grigio icona
- 22. Rimuovere una chiamata Ajax dai collegamenti regolari con jQuery Mobile
- 23. Come pagina a pagina successiva/precedente in jqGrid
- 24. Come velocizzare jquery mobile/phonegap?
- 25. Trovare l'URL della pagina precedente
- 26. JSF reindirizzamento alla pagina precedente
- 27. iFrame non si carica al caricamento della pagina (jQuery Mobile)
- 28. Pagina bianca durante il caricamento durante l'utilizzo di jQuery Mobile
- 29. JQuery Mobile semplicedialog cancella i miei dati dinamici dalla pagina
- 30. jQuery Rileva fine di pagina su Safari Mobile/iOS