jQuery Mobile中jQuery.mobile.changePage方法使用详解

jQuery.mobile.changePage方法用的还是很多的。作为一个老手,有必要对jQuery mobile中实用方法做一些总结。系列文章请看jQuery Mobile专栏。jquery.mobile.changepage是过时的jQuery Mobile 1.4.0及将被删除在1.5.0。使用pagecontainer部件的change()法代替。

注意该方法是在内部使用的页面加载和转换作为一个结果,点击一个链接或提交表单时。跳转外部页面全部没有效果,必须是内部的DIV页面才有效果。

jQuery.mobile.changePage( to [, options ] )参数解释说明:

to:字符串类型或Object类型,将要跳转到的目的页面。

options:可选参数,Object类型。其对象内的属性解释如下:

allowSamePageTransition:布尔类型,默认为false。默认情况下,changepage()忽略请求改变当前的活动页面。设置为true,允许请求执行。注意的一些页面转换到另一个页面(changepage请求的页和页是不同的),他们可能不会如预期的动画。

changeHash:布尔类型,默认为true。设置为true时地址栏中的Hash更新会创建一个新的浏览器历史记录的影响。设置为false,传入的页面在浏览器历史替换当前页面,用户导航无法通过浏览器的“后退”按钮回到上一个页面。

data:Object类型或字符串类型,默认为 undefined。跳转页面发送ajax请求的参数。

dataUrl:字符串类型,默认为 undefined。完成页面转换时要更新浏览器地址的URL地址。如不特别指定,则使用页面page元素的data-url属性值。

pageContainer:(jQuery选择器,默认:$.mobile.pageContainer)指定应该包含页面的容器。

reloadPage:布尔类型,默认false。强制刷新页面, 即使当页面容器中的dom元素已经准备好时,也强制刷新。只在changePage()的to参数是一个可用地址的时候。

reverse:布尔类型,默认false。设定页面转场动画的方向,设置为true时将导致反方向的转场。

role:字符串类型,默认为 undefined。显示页面的时候使用data-role值。默认情况下此参数为认:undefined,取决于元素的@data-role属性。

showLoadMsg:布尔类型,默认true。设定加载外部页面时是否显示loading信息。

transition:字符串类型,默认为 $.mobile.defaultPageTransition。过渡到其他页面时呈现。

type:字符串类型,默认为get。只有到to的参数被指定时使用。

使用例子如下:添加changehash:假以避免iframe引起的问题。

$.mobile.changePage( "../resources/us.html", {
	transition: "slideup",
	changeHash: false
});
$.mobile.changePage( "../resources/results.php", {
  type: "post",
  data: $( "form#search" ).serialize(),
  changeHash: false
});
$.mobile.changePage( "../resources/confirm.html", {
  transition: "pop",
  reverse: false,
  changeHash: false
});
//以slideup效果 跳转到 "about us" 页面
$.mobile.changePage("about/us.html", "slideup");

//以pop效果 跳转到 "confirm" 页面 并且在url hash里不记录其历史
$.mobile.changePage("../alerts/confirm.html", "pop", false, false); 

//跳转到 "search results" 页面,提交id为 "search"的表单数据
$.mobile.changePage({url:"searchresults.php" , type:"get" , data: $("form#search").serialize() }); 

//将页面url,类型,数据定义为变量来传递。
$.mobile.changePage({ url: formresults.php, type: 'get', data:$('form#myform').serialize () });

//使用changepage来加载第三个页面
$.mobile.changePage([$.mobile.activePage.data ('ui.prevPage'), anotherPreviousPage], 'pop');
时间: 2024-08-05 04:22:23

jQuery Mobile中jQuery.mobile.changePage方法使用详解的相关文章

jquery源码解析:jQuery延迟对象Deferred(工具方法)详解2

请接着上一课继续看. $.Deferred()方法中,有两个对象,一个是deferred对象,一个是promise对象. promise对象有以下几个方法:state,always,then,promise,pipe,done,fail,progress. deferred对象除了有promise对象的所有方法外(通过jQuery.extend( obj, promise ),把promise对象的所有方法复制到deferred对象中),还有其他三个:resolve,reject,notify.

jquery源码解析:jQuery延迟对象Deferred(工具方法)详解1

请先看上一课的回调对象.Deferred是通过extend添加到jQuery中的工具方法.如下所示: jQuery.extend({ Deferred: function( func ) { }, when: function( subordinate /* , ..., subordinateN */ ) { }}); 首先,来介绍下Deferred的使用: var cb = $.Deferred(); setTimeout(function(){ alert(1); cb.resolve()

jquery getScript动态加载JS方法改进详解[转载]

转载自http://www.jb51.net/article/31973.htm 有许多朋友需要使用getScript方法动态加载JS,本文将详细介绍此功能的实现方法 $.getScript(url,callback) 这个方法是jquery自身提供的一个用于动态加载js的方法.当网站需要加载大量js时,动态的加载js就是一个比较好的方法,当需要某个功能时再将相应的js加载进来. 但是自己在使用过程中却发现了一些不尽如意的地方. 每次需要执行该功能的时候都会去请求一次这个js,这样不是在帮倒忙嘛

Lua中强大的元方法__index详解

今天要来介绍比较好玩的内容--__index元方法 1.我是备胎,记得回头看看 咳咳,相信每一位女生都拥有或者不知不觉中拥有了一些备胎,啊,当然,又或许是成为过别人的备胎. 没有备胎的人,就不是完整的人生.(小若:停!) 我们来想象一下,如果对一个table进行取值操作,但是table根本就没有这个值呢?比如: 复制代码代码如下: local t = {        name = "hehe",    }    print(t.money); 输出结果当然是:nil t只用于name

ECMAScript5中新增的Array方法实例详解

ECMAScript5标准发布于2009年12月3日,它带来了一些新的,改善现有的Array数组操作的方法.(注意兼容性) 在ES5中,一共有9个Array方法:http://kangax.github.io/compat-table/es5/ Array.prototype.indexOf Array.prototype.lastIndexOf Array.prototype.every Array.prototype.some Array.prototype.forEach Array.pr

vue中 localStorage的使用方法(详解)

vue中实现本地储存的方法:localStorage,在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),localStorage中一般浏览器支持的是5M大小,这个在不同的浏览器中localStorage会有所不同. (1).储存数据 localStorage.setItem('accessToken', 'Bearer ' + response.data.res

python中列表的sort方法使用详解

一.基本形式 列表有自己的sort方法,其对列表进行原址排序,既然是原址排序,那显然元组不可能拥有这种方法,因为元组是不可修改的. 排序,数字.字符串按照ASCII,中文按照unicode从小到大排序 x = [4, 6, 2, 1, 7, 9] x.sort() print (x) # [1, 2, 4, 6, 7, 9] 如果需要一个排序好的副本,同时保持原有列表不变,怎么实现呢? x = [4, 6, 2, 1, 7, 9] y = x[:] y.sort() print(y) # [1,

JQuery中$.ajax()方法参数详解

url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 delete也可以使用,但仅部分浏览器支持. timeout: 要求为Number类型的参数,设置请求超时时间(毫秒).此设置将覆盖$.ajaxSetup()方法的全局设 置. async:要求为Boolean类型的参数,默认设置为true,所有请求均为异步请求. 如果需要发送同步请求,请将此选项

JQuery中$.ajax()方法参数详解 (转)

url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 delete也可以使用,但仅部分浏览器支持. timeout: 要求为Number类型的参数,设置请求超时时间(毫秒).此设置将覆盖$.ajaxSetup()方法的全局设 置. async:要求为Boolean类型的参数,默认设置为true,所有请求均为异步请求. 如果需要发送同步请求,请将此选项