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,传入的页面在浏览器历史替换当前页面,用户导航无法通过浏览器的“后退”button回到上一个页面。


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');

posted @ 2017-08-15 10:11  jzdwajue  阅读(497)  评论(0编辑  收藏  举报