转自:http://www.cnblogs.com/yuzhongwusan/archive/2011/12/01/2270863.html
初始化
jQM在加载的时候会自动的初始化默认配置项,这样我们就不需要为了学习和配置这些参数花费很多的时间了,大大的提高了开发效率。
但是有些时候因为项目的需要我们还是需要对这些参数进行自定义的。在学习jQM的初始化参数之前,我们需要先来了解mobileinit事件。
Mobileinit事件
jQM的加载事件和普通的jQuery插件有所不同,它会在document.ready事件之前执行。因此我们在需要对jQM的默认运行参数进行调整的时候就需要在document.ready事件之前来对这些参数进行设置,jQM为我们提供了mobileinit事件来处理加载之前需要执行的代码。
例如:
$(document).bind("mobileinit", function(){
//apply overrides her
});
复制代码
初始化配置项的两种方法
方法一:通过jQuery的$.extend方法来设置多个配置项
$(document).bind("mobileinit", function(){
$.extend( $.mobile , {
foo: bar
});
});
复制代码
方法二:独立设置每个配置项
$(document).bind("mobileinit", function(){
$.mobile.foo = bar;
});
复制代码
初始化配置项
以下是可以通过$.mobile对象来初始化的配置项:
activeBtnClass (string, default: "ui-page-active"):
设置按钮处于激活状态时的CSS样式。
字符串类型,在默认状态下参数是引用样式表中的” ui-page-active "。
覆盖范围:Buttons、List views、Select menus等组件的触发状态。
例如:
$(document).bind("mobileinit", function(){
$.mobile.activeBtnClass="ui-btn-hover-a";
});
复制代码
将按钮激活状态的样式定义为样式” ui-btn-hover-a”
activePageClass (string, default: "ui-page-active"):
设置当前激活状态页面的样式,一个jQM页面中必将有一个页面容器是处于激活状态的,其它jQM页面容器将会处于隐藏状态。
字符串类型,在默认状态下参数是引用样式表中的” ui-page-active”,样式ui-page-active是用来将页面设置为显示状态的样式。所以在自定义这个样式到时候必须要在样式中声明以下属性:”display:block !important; overflow:visible !important;” 。(注意:不熟悉jQM的CSS框架的朋友经常会遇到自定义的样式不起作用的情况,这一般是由于自定义的样式和原有CSS框架的继承关系不同引起的,可以在不起作用的样式后面加上!important来提高自定义样式的优先级)
例如:
$(document).bind("mobileinit", function(){
$.mobile.activePageClass="ui-page-custom";
});
复制代码
将页面激活状态的样式定义为样式” ui-page-custom”,” ui-page-custom”中必须定义” display:block !important; overflow:visible !important;”属性。
ajaxEnabled (boolean, default: true):
同时设置页面中的链接和表单提交是否使用Ajax方法,也就是说表单的提交和a标记中的链接,都是采用ajax调用。
布尔类型,在默认状态下参数是true。
例如:
$(document).bind("mobileinit", function(){
$.mobile.ajaxEnabled=false;
});
复制代码
如果你的项目中没有用到Ajax,那么建议将这里设为false
ajaxFormsEnabled (deprecated boolean, default: true):
单独设置页面中的表单提交是否使用Ajax方法。
布尔类型,在默认状态下参数是true。
ajaxLinksEnabled (deprecated boolean, default: true):
单独设置页面中的链接是否使用Ajax方法。
布尔类型,在默认状态下参数是true。
autoInitialize (boolean, default: true):
设置页面是否自动初始化,当设置为false时,jQM将推迟对页面的渲染,方便我们动态构建页面的Dom元素等异步操作时引发的页面渲染失败问题。
在页面元素构建完成后用$.mobile.initializePage();来开始渲染页面。
布尔类型,默认状态下参数为true。
例如:
$(document).bind("mobileinit", function(){
$.mobile.autoInitialize=false; //删除这行配置参数就会出现渲染错误
});
$(function(){
function newDom(){
$("div[data-role='content']")
.append("<a href='web.html' data-role='button'>Link button</a>");
$.mobile.initializePage();//加载完成后开始渲染页面
}
setTimeout(newDom,500); //延时加载
});
复制代码
defaultTransition (string, default: 'slide'):
设置默认的页面过渡效果,如果不想使用过渡效果就将参数设置为”none”。
字符类型,默认参数”slide”。
gradeA (function that returns a boolean, default: a function returning the value of $.support.mediaquery):
用于判断浏览器是否属于A级浏览器。
布尔类型,默认$.support.mediaquery用于返回这个布尔值。
loadingMessage (string, default: "loading"):
设置加载提示框里显示的文本,如果设置为false,将不显示加载提示框。
字符类型,默认值”loadind”。
metaViewportContent (string, default: "width=device-width, minimum-scale=1, maximum-scale=1"):
设置用于页面的适应比例的mata元素,如果设置为false,将不添加Mata元素。
字符类型,默认” width=device-width, minimum-scale=1, maximum-scale=1”。
nonHistorySelectors (string, default: "dialog"):
设置何种data-rel参数不会记录到哈希表。
由于现阶段data-rel只有” dialog”参数,建议不要自定义此项。
subPageUrlKey (string, default: "ui-page"):
用于设置引用子页面时哈希表中的标识。
字符类型,默认” ui-page”。
分享到:
相关推荐
**jQuery Mobile 中文手册** ...在实际开发过程中,参照《jQuery Mobile 中文手册》PDF 文件,结合实践案例,可以帮助开发者深入理解并有效运用 jQuery Mobile 的各种功能,提升移动应用的开发效率和用户体验。
### jQuery Mobile 开发入门手册——知识点详解 #### 概述 jQuery Mobile 是一款基于 jQuery 的移动设备框架,专为智能手机和平板电脑等移动设备设计。它提供了一套完整的 UI 组件,可以快速构建美观且功能丰富的...
- **事件(Events)**:jQuery Mobile 提供了特定的事件,如 `pageinit`(页面初始化)和 `tap`(轻触事件),用于处理用户交互。 ### 2. 页面结构与导航 - **单一页面模板(Single Page Template)**:jQuery ...
《jQuery Mobile A4 中文手册》是一份详尽的指南,专为想要深入理解并熟练运用jQuery Mobile框架的开发者设计。jQuery Mobile是一个轻量级、跨平台的移动UI框架,它使得开发响应式、触控优化的网页应用变得更加简单...
### jQueryMobile Ajax开发知识点概述 #### 一、版本特性 1. **Push State 支持**:jQuery Mobile (JQM) 在此版本中加入了对 `history.pushState` 的支持,这是一个 HTML5 API,允许开发者在不刷新页面的情况下...
jQuery Mobile 是一个专为触摸设备设计的前端框架,它基于 jQuery 库,旨在简化移动 Web 应用程序的开发。这个框架提供了统一的接口,使得开发者能够创建跨平台、跨设备的移动应用,支持各种智能手机和平板电脑。...
jQuery Mobile 是一个轻量级、触控优化的前端框架,专为移动设备设计,它提供了一整套构建移动Web应用程序的组件。在这个“jQuery mobile滑动式的标题导航”主题中,我们将深入探讨如何利用jQuery Mobile创建动态且...
jQuery Mobile 自动处理页面初始化,包括样式应用、事件绑定等。当页面首次加载时,所有可见页面都会被初始化。对于动态加载的内容,可以使用 `$.mobile.pageContainer.page("refresh")` 来手动触发初始化。 ### 五...
**jQuery Mobile 开发案例** jQuery Mobile 是一个专为移动设备设计的前端框架,它基于 jQuery 和 HTML5,致力于简化移动 Web 应用程序的开发。这个框架提供了丰富的 UI 组件和交互效果,使得开发者能够快速构建...
通过阅读指定的博客文章(博文链接已给出),读者可以深入学习到jQuery Mobile的实战技巧,包括如何初始化项目、如何创建基本页面结构、如何使用组件、如何处理事件,以及如何解决常见问题。同时,文件名称...
5. 动态加载与Ajax导航:jQueryMobile默认使用Ajax技术实现页面间的平滑过渡,但需注意处理页面依赖和初始化问题。 6. 自定义主题:使用Themeroller工具,可以快速定制符合品牌风格的主题色和样式。 7. 性能优化:...
在使用 jQuery Mobile 进行移动应用开发时,`pageinit` 是一个非常重要的事件,它会在每个页面加载时触发。然而,有时在页面跳转过程中可能会遇到 `pageinit` 事件被重复调用的问题,这可能会影响到页面的正常初始化...
8. **页面初始化和事件**:页面加载和显示时,jQuery Mobile 触发特定的事件,如 `pagecreate`、`pagebeforeload` 和 `pagechange`,这使得开发者可以在适当的时间点进行自定义操作。 在这个源代码压缩包中,你可能...
**jQuery Mobile 知识点详解** ...总之,jQuery Mobile 提供了一个强大的工具集,用于快速开发响应式、移动优先的Web应用。通过理解其核心概念和组件,开发者可以创建出既美观又实用的移动Web界面。
**jQuery Mobile 开发指南——深度探索与实践** jQuery Mobile 是一个强大的前端框架,专为构建移动设备上的响应式网页应用而设计。它基于 jQuery 库,提供了统一的接口和组件,使得开发者能够轻松创建触控优化的...
在提供的文件列表中,`index.html` 应该是项目的主入口文件,包含页面的基本结构和 jQuery Mobile 的初始化。`css` 文件夹可能包含自定义或默认的 jQuery Mobile CSS 样式,用于美化和布局。`js` 文件夹可能包含了...
- 棋盘初始化:设置空棋盘状态,定义可落子的位置。 - 用户交互:监听棋盘的点击事件,当用户点击时放置相应颜色的棋子。 - 胜负判断:检查每一步之后的棋局是否满足五子连珠的胜利条件。 - 回溯功能:如果允许...
- `pageinit` 事件在页面首次加载或通过 AJAX 加载时触发,是进行页面特定初始化的好时机。 - `tap` 事件模拟点击行为,适用于触摸设备,而 `click` 事件可能对桌面和移动设备都有效。 8. **jqm+各种界面** - ...
jQuery Mobile通过AJAX技术实现了页面间的平滑导航,使得用户在不同页面间切换时无需重新加载整个页面,提高了用户体验。 2. **触控友好的界面(Touch-friendly Interface)** 设计了大量的触摸事件处理,如点击...
为了优化性能,可以考虑以下策略:延迟初始化、使用主题 CSS 文件而不是 JavaScript 插件、减少不必要的 DOM 操作等。 **10. 学习资源与社区** jQuery Mobile 社区提供了丰富的文档、教程和插件,如官方文档、...