javascript - tag - Jquery mobile-problema de cambio de inicio
jquery mobile w3school (2)
Creo que estás luchando contra el complemento "pushState" en jQuery Mobile agregado en Beta 3 (creo). Puede desactivar este complemento con el siguiente código (utilizado antes de incluir el archivo jQuery Mobile JavaScript):
$(document).on(''mobileinit'', function () {
$.mobile.pushStateEnabled = false;
});
Consulte la documentación aquí (vea la sección "Complemento pushState"): http://jquerymobile.com/demos/1.0rc3/docs/pages/page-navmodel.html
Estoy usando $.mobile
en mi aplicación. Debo crear mi propio sistema de enrutamiento. hashchange
al observador en hashchange
y saco datos interesantes de location.hash
. Tengo un problema: jQuery.mobile
elimina el signo de hash de location.hash
si tiene barras inclinadas (por ejemplo, de ''lalal/#controller/action/param''
a ''lalal/controller/action/param''
y $.mobile
dice en cuadro amarillo Error Loading Page
.
Traté de desvincular el "intercambio" existente primero, pero las páginas no se cargan automáticamente (lo que requiero).
¿Cómo prevenir cambios de hash, pero que jQuery aún debe cargar la página automáticamente (por ejemplo, por su ID declarada en el elemento que tiene data-role=''page''
)? . A continuación se muestra un fragmento de mi clase de enrutador: ( Router.load
no cambia location.hash
)
__construct: function() {
var that = this;
$( window ).bind( "hashchange" , function( e ) {
//e.stopImmediatePropagation()
that.load( this.location.hash );
});
}
en su html después de incluir jquery y antes de incluir jquery.mobile-1.xyjs agregar:
<script>
$(document).bind("mobileinit", function(){
$.mobile.pushStateEnabled = false;
$.mobile.ajaxEnabled = false;
$.mobile.hashListeningEnabled = false;
});
</script>