Jquery mobile de changement de page
j'ai la disposition de deux colonnes pour une page Web à partir du site, http://jquerymobile.com/demos/1.0.1 /
maintenant, ils ont fourni des dispositions pour changer la page en utilisant
<a href="#xxx" data-role="button">Sample</a>
mais ma question Est de savoir comment programmer la page en utilisant le code.
$.mobile.changePage("#xxx");
ne fonctionne pas pour moi
6 réponses
voici un exemple très simple pour vous: http://jsfiddle.net/shanabus/YjsPD /
$.mobile.changePage("#page2");
Documentation: http://api.jquerymobile.com/jQuery.mobile.changePage /
autres exemples:
//transition to the "about us" page with a slideup transition
$.mobile.changePage( "about/us.html", { transition: "slideup"} );
//transition to the "search results" page, using data from a form with an ID of "search""
$.mobile.changePage( "searchresults.php", {
type: "post",
data: $("form#search").serialize()
});
//transition to the "confirm" page with a "pop" transition without tracking it in history
$.mobile.changePage( "../alerts/confirm.html", {
transition: "pop",
reverse: false,
changeHash: false
});
mise à JOUR
comme le souligne Chase Roberts dans les commentaires ci-dessous, cette méthode changePage
a été dépréciée en la version 1.4. Voici la documentation pour le nouvel événement pagecontainer change .
exemple:
$.mobile.pageContainer.pagecontainer("change", "#page", { options });
cela a également été abordé sur cette question SO: Comment changer la page dans jQuery mobile (1.4 beta)?
je sais que cela a déjà été répondu, mais sûrement la bonne réponse pourquoi cela ne fonctionnait pas est que la syntaxe est incorrecte ?
$.mobile.changePage nécessite L'objet DOM (pour afficher des pages dans le même fichier HTML en utilisant la syntaxe de hachage) et pas seulement une chaîne de caractères. Donc la syntaxe correcte pour l'exemple donné:
$.mobile.changePage($("#xxx"));
ça devrait marcher!
Espérons que cette aide
$.mobile.changePage($("#page2"));
est la façon correcte de changer entre lequel div est la page visible.
si vous utilisez
$.mobile.changePage("#page2");
le DOM sera rechargé, et tout événement ondocumentready sera déclenché.
Non, c'est la syntaxe correcte $.mobile.changePage("#page2");
ou $.mobile.changePage( "about/us.html");
voir l'Api
vous vérifiez d'abord le bloc div start et end tag bcoz parfois si une étiquette est manquante la transition de page n'est pas possible. Après cela, utilisez le code suivant
$.mobile.changePage("#page2");
function signin() {
alert('singin button has been clicked');
$.ajax({
type: 'POST',
url: 'http://localhost:8080/json/login',
dataType: "json",
headers: {'Authorization':'Basic '+ btoa('abc' + ':' + '12345')},
contentType: 'application/json',
data:loginFormToJSON(),
success: function(data, textStatus, jqXHR)
{
if(data.token !="ErrorID-11000"){
alert('login successfully');
//document.location.href = "accountinfo.html";
//document.getElementById("loginBtn").replace="accountinfo.html";
$.mobile.changePage("accountinfo.html");
}
else{
alert('userid password did not match');
}
},
error: function(jqXHR, textStatus, errorThrown){
alert('login error:'+errorThrown + textStatus);
}
});
}
à partir du code ci-dessus, je suis dans la page d'inscription et aller à la page des comptes sur la connexion réussie, cela fonctionne avec Jquery mobile 1.4.
Espère que ça aide.