jQuery移动web开发之页面跳转和加载外部页面的实现


Posted in Javascript onDecember 04, 2015

changePage() 页面跳转

jQuery.mobile.changePage( to [, options ] )

从一个页面跳转到另一个页面,使用$.mobile对象的changePage方法来实现。但要使用此方式的时候,要以点击一个链接或者提交表单来实现。此方法有两个参数。

to:是第一个参数,是必须的,不可缺少。类型:字符串或者对象。

字符串: 绝对或相对URL地址。如:("about/us.html")

对象:
jquery选择器对象,如:($("#about"))。
一个指定了两个页面引用的数组[from,to] ,用以在已知的page进行跳转. From 是当前所能看到的页面( 或者是 $.mobile.activePage )。
发送表单数据的对象,如({to: url, data: serialized form data, type: "get" or "post"} 。

options:是第二个参数,是可选。类型:对象

allowSamePageTransition(布尔值,默认:false)
默认情况下,changePage() 会忽略跳转到已活动的页面的请求。如果把这项设为true,会使之执行。开发者应该注意有些页面的转场会假定一个跳转页面的请求中来自的页面和目标的页面是不同的,所以不会有转场动画。

changeHash(布尔值,默认:true)
判断地址栏的哈希值是否应被更新。

data(字符串 或 对象,默认:undefined)
要通过ajax请求发送的数据,只在changePage() 的 to 参数 是一个地址的时候可用。

dataUrl(字符串,默认:undefined)
完成页面转换时要更新浏览器地址的URL地址。如不特别指定,则使用页面的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)
指定页面请求的时候使用的方法("get" 或者 "post")。只在changePage() 的 to 参数 是一个地址的时候可用。

//以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,类型,数据定义为变量来传递。

var pageData = { url: formresults.php, type: 'get', data:$('form#myform').serialize () };

$.mobile.changePage(pageData);
//使用changepage来加载第三个页面

var previousPage = $.mobile.activePage.data ('ui.prevPage');

$.mobile.changePage([previousPage, anotherPreviousPage], 'pop');

loadPage() 加载外部页面

jQuery.mobile.loadPage( url [, options ] )

加载一个外部页面,附加其内容,并将其插入到DOM

url:是第一个参数。是必须的。类型:字符串或者对象。

options:第二个参数。是可选的。类型:对象。

allowSamePageTransition (default: false)
类型:布尔值
默认情况下,changepage()忽略请求改变当前页面。这个选项设置为true,允许请求执行。开发人员应该注意的一些网页过渡假设一个changepage请求设置FromPage、ToPage是不同的,所以他们可能不会如预期的动画。开发人员负责提供适当的过渡,或关闭这个特定的情况下。

changeHash (default: true)
类型:布尔值
如果地址栏中的哈希值应更新

data (default: undefined)
类型:数据或者字符串
要发送的数据与一个AJAX页面请求

loadMsgDelay (default: 50)
类型:数字
被迫延迟(毫秒)显示之前加载信息。这是为了让一个页面已经访问了被从缓存中取得没有加载信息的时间

pageContainer (default: $.mobile.pageContainer)
类型:jQuery选择器
指定要包含的页面元素

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

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

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

transition (default: $.mobile.defaultPageTransition)
类型:字符串
使用显示的页面时,过渡

type (default: "get")
类型:字符串
指定页面请求的时候使用的方法("get" 或者 "post")。只在changePage() 的 to 参数 是一个地址的时候可用。

加载一个外部页面,提高其内容,并将其插入到DOM。这种方法被称为内部的changepage()功能时,它的第一个参数是一个URL。这个函数不影响当前页面可以在后台加载页面。该函数返回一个对象,获取延期承诺在该页被增强,插入到文档中的解决。
加载“about/us.html”的页面到DOM

<!doctype html>
<html lang="en">
<head>
 <meta charset="utf-8">
 <meta name="viewport" content="width=device-width, initial-scale=1">
 <title>jQuery.mobile.loadPage demo</title>
 <link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.0/jquery.mobile-1.3.0.min.css">
 <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
 <!-- The script below can be omitted -->
 <script src="/resources/turnOffPushState.js"></script>
 <script src="http://code.jquery.com/mobile/1.3.0/jquery.mobile-1.3.0.min.js"></script>
</head>
<body>
 
<div data-role="page">
 
 <div></div>
 
</div>
<script>
$.mobile.loadPage( "about/us.html" );
</script>
 
</body>
</html>

 

加载一个“searchresults.php”页,要发送的表单数据是“search”字符。

<!doctype html>
<html lang="en">
<head>
 <meta charset="utf-8">
 <meta name="viewport" content="width=device-width, initial-scale=1">
 <title>jQuery.mobile.loadPage demo</title>
 <link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.0/jquery.mobile-1.3.0.min.css">
 <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
 <!-- The script below can be omitted -->
 <script src="/resources/turnOffPushState.js"></script>
 <script src="http://code.jquery.com/mobile/1.3.0/jquery.mobile-1.3.0.min.js"></script>
</head>
<body>
 
<div data-role="page">
 
 <div></div>
 
</div>
<script>
$.mobile.loadPage( "searchresults.php", {
 type: "post",
 data: $( "form#search" ).serialize()
});
</script>
 
</body>
</html>
Javascript 相关文章推荐
用js实现的检测浏览器和系统的函数
Apr 09 Javascript
javascript function调用时的参数检测常用办法
Feb 26 Javascript
jQuery-ui中自动完成实现方法
Jun 10 Javascript
jQuery获取文本节点之 text()/val()/html() 方法区别
Mar 01 Javascript
Jquery中显示隐藏的实现代码分析
Jul 26 Javascript
JavaScript 32位整型无符号操作示例
Dec 08 Javascript
jquery列表拖动排列(由项目提取相当好用)
Jun 17 Javascript
Bootstrap实现登录校验表单(带验证码)
Jun 23 Javascript
微信小程序框架的页面布局代码
Aug 17 Javascript
JavaScript Reflect Metadata实现详解
Dec 12 Javascript
原生js实现碰撞检测
Mar 12 Javascript
在HTML5 localStorage中存储对象的示例代码
Apr 21 Javascript
详解JavaScript逻辑And运算符
Dec 04 #Javascript
JavaScript encodeURI 和encodeURIComponent
Dec 04 #Javascript
详解JavaScript逻辑Not运算符
Dec 04 #Javascript
简要了解jQuery移动web开发的响应式布局设计
Dec 04 #Javascript
jQuery1.9.1源码分析系列(十六)ajax之ajax框架
Dec 04 #Javascript
jQuery使用$.ajax进行异步刷新的方法(附demo下载)
Dec 04 #Javascript
Jquery1.9.1源码分析系列(十五)动画处理之外篇
Dec 04 #Javascript
You might like
php 深入理解strtotime函数的使用详解
2013/05/23 PHP
Yii使用find findAll查找出指定字段的实现方法
2014/09/05 PHP
一个简单的php路由类
2016/05/29 PHP
PHP在线打包下载功能示例
2016/10/15 PHP
php实现PDO中捕获SQL语句错误的方法
2017/02/16 PHP
HTTP状态代码以及定义(解释)
2007/02/02 Javascript
JQuery之拖拽插件实现代码
2011/04/14 Javascript
jQuery UI AutoComplete 使用说明
2011/06/20 Javascript
jquery复选框全选/取消示例
2013/12/30 Javascript
jQuery toggleClass应用实例(附效果图)
2014/04/06 Javascript
javascript模拟订火车票和退票示例
2014/04/24 Javascript
PHP中使用微秒计算脚本执行时间例子
2014/11/19 Javascript
jQuery使用attr()方法同时设置多个属性值用法实例
2015/03/26 Javascript
jQuery编程中的一些核心方法简介
2015/08/14 Javascript
jQuery获取某天的农历日期并判断是否除夕或新年的方法
2016/03/01 Javascript
jQuery实现将div中滚动条滚动到指定位置的方法
2016/08/10 Javascript
JS简单获取当前年月日星期的方法示例
2017/02/07 Javascript
Vue自定义图片懒加载指令v-lazyload详解
2020/12/31 Javascript
layui关闭弹窗后刷新主页面和当前更改项的例子
2019/09/06 Javascript
防止Layui form表单重复提交的实现方法
2019/09/10 Javascript
Python实现快速排序和插入排序算法及自定义排序的示例
2016/02/16 Python
Python的mysql数据库的更新如何实现
2017/07/31 Python
python基础学习之如何对元组各个元素进行命名详解
2018/07/12 Python
OpenCV+face++实现实时人脸识别解锁功能
2019/08/28 Python
Pytorch 实现冻结指定卷积层的参数
2020/01/06 Python
HTML5 贪吃蛇游戏实现思路及源代码
2013/09/03 HTML / CSS
我的珠宝盒:Ma boîte à bijoux
2019/08/27 全球购物
商场消防演习方案
2014/02/12 职场文书
2014厂务公开实施方案
2014/02/17 职场文书
卫生院健康教育实施方案
2014/06/07 职场文书
国际商贸专业自荐信
2014/06/09 职场文书
志愿者宣传口号
2014/06/17 职场文书
2014年环卫工作总结
2014/11/22 职场文书
教师培训学习心得体会
2016/01/21 职场文书
教您怎么制定西餐厅运营方案 ?
2019/07/05 职场文书
使用canvas对video视频某一刻截图功能
2021/09/25 HTML / CSS