在加载页面或者加载页面出错的时候页面默认提示"loading","Error Loading Page"等等不是我们想要的。
需要修改默认的配置。
以下是 $.mobile
对象的可配置选项以及其默认值: 具体见jquery.mobile-1.0.js
-
subPageUrlKey (
string, default: "ui-page"):
- url参数用来引用由插件生成的子页面(例如那些由嵌套的listview生成的子页面) 例如: example.html&ui-page=subpageIdentifir. 在&ui-page=前的部分被jquery mobile框架用来向子页面所在的URL发送一个ajax请求. nonHistorySelectors ( string, default: "dialog"):
- 对于带有data-rel属性值的a标签链接 或者 带有data-role属性值的page,如果它们匹配这些选择器(即该string参数),那么它们不会在历史记录中被追踪 (即它们不会在location.hash中被更新也不会被浏览器历史所标记). activePageClass ( string, default: "ui-page-active"):
- 该class被分配给当前视图中的page (包括过渡状态中的) activeBtnClass ( string, default: "ui-page-active"):
- 该class用于"激活"button的状态 (参见css框架). ajaxEnabled ( boolean, default: true):
- 当可能的时候jQuery Mobile 会自动通过ajax处理链接点击以及表单提交, 如果不行,url hash 监听将会停止,url也会像常规那样发出HTTP 请求. ajaxLinksEnabled ( boolean, default: true):
- 只要可行的时候,jQuery Mobile 就会自动通过ajax处理链接的点击. ajaxFormsEnabled ( boolean, default: true):
- 只要可行的时候,jQuery Mobile 就会自动通过ajax处理页面提交. autoInitialize ( boolean, default: true):
-
当该选项被设置为false时 自动初始化功能将延迟嵌入页面(page)的增强功能直到
被显式调用. 默认情况下当DOM加载完毕page将会被增强.$.mobile.initializePage();
defaultTransition (
string, default: 'slide'):
- 设置页面过渡效果(ajax请求),设置为'none'表示没有任何过渡效果. loadingMessage ( string, default: "loading"):
- 设置页面加载时显示的文本. 如果设置为false, 将不会显示任何文本. metaViewportContent ( string, default: "width=device-width, minimum-scale=1, maximum-scale=1"):
- 配置自动生成的meta标签,如果为false,将不会为DOM添加任何meta标签. gradeA ( 函数返回boolean值, default: 该函数默认返回 $.support.mediaquery 的值):
- 浏览器必须符合所有支持的条件才会返回 true.
等等……
当jQuery Mobile开始执行的时候, 它会在document
对象上触发一个mobileinit
事件, 可以重写jQuery Mobile默认的响应函数.
$(document).bind("mobileinit", function(){ //这里是重写的代码 });
这个方法必须写到 jquery.mobile-1.0.js 引入之前。
在绑定事件的函数内部,你可以使用$.mobile
对象的$.extend
方法来配置默认参数值:
$(document).bind("mobileinit", function(){ $.extend( $.mobile , { foo:
bar }); });
或者单独设置它们:
<script type="text/javascript">
$(document).bind("mobileinit", function() {
$.mobile.loadingMessage = "正在加载数据,请稍候……";
$.mobile.pageLoadErrorMessage = "很抱歉,系统好像出了点问题!";
});
</script>