`
longgangbai
  • 浏览: 7331367 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

jquery mobile使用小技巧

 
阅读更多

 

   jquery mobile是一个好框架,虽然我没用过Sencha Touch,但据说学习成本要比jq mobile大很多,从目前web app ui框架选择少的情况来看,jq mobile是最好的选择。

jquery本身已是一个成熟的框架,jq mobile作为它的附属,继承了 write less,do more 的传统。

但是作为一个新兴起的项目,毛病也是有不少。我在运用到项目中时,发现了如下问题并积累了下解决方法。

 

1.页面转场时,当前页会先回到顶部,再跳转到目标页

相信在jquery mobile 1.1.0 版本出来之前,每个人都会遇到的问题。页面短的还好,假如页面内容很长,每次页面转换时都能明显的看到滚动条自动回到顶部的一下操作,更可怕的是当你返回上一页时,jquery mobile会恢复你上次浏览的位置,滚动条又从顶部跳回你之前的地方。

这种页面的错顿感严重影响用户体验,特别是在android的手机上。各种搜索引擎无果后,曾经我避免把页面长度做得超过1屏,也尝试修改jq mobile的源码(但效果不好),折磨了一段时间后,迎来了jquery mobile的更新,然后 1.1.0版本解决了这个问题。

所以如果还被这个问题困扰的同学们,赶紧去下新版的jq mobile。

 

2.页面转场闪屏问题

在页面转场时,页面内容经常会闪动,特别对于slide效果,fade的话没那么严重但也还是会觉察到闪动。这对于用户体验是致命伤,原因是手机浏览器对于css3的支持还不算太好。解决的方法就是让页面转场效果进行的时候,先将内容背景隐藏,加上下面的一段CSS

 

1
2
3
4
5
6
/* fixed闪屏 */
.ui-page {  
     backface- visibility : hidden ;  
     -webkit-backface- visibility : hidden ; /* Chrome and Safari */   
     -moz-backface- visibility : hidden ; /* Firefox */   
}

需要注意的是你的jquery最好使用 1.7.1或以上的版本,否则有上面的css也可能还是会闪屏。

 

1.7版的jquery加多了对CSS3的支持和兼容,可以说是为移动端而设计的,假如你正在开发web app,有什么理由不用它呢?

3.tab选择之后back不能恢复原始状态问题

   在几个均有导航的页面如果其中有一个页面有tab页面,选择非默认的之后,返回上一个页面,之后在回来,没有采用默认的那个tab选中并改变默认颜色。可以采用如下代码:ui-btn-active表示选中样式

 

  <!-- header -->
					<div data-role="header"   data-position="fixed"> 
						<a   data-icon="arrow-l" data-Iconpos='left' data-rel="back" >返回</a>
						<h1>属性管理</h1>
						<div data-role="navbar" data-grid="a"   >
							<ul class="menuMain">
								<li id="1"><a id="TypeURL" href="#" class="ui-btn-active" >类型</a></li>
								<li id="2"><a id="areaURL" href="#"  >区域</a></li>
							</ul>
						</div><!-- /navbar -->
					</div>
 
			if(tabId=="1"){ //类型
							$("#content-first").css("display","block");
							$("#content-second").css("display","none");
						
							divId="#content-first";
							$("#TypeURL").addClass("ui-btn-active");
							$("#areaURL").removeClass("ui-btn-active");
							
							queryURL=AssertAttrWSURL.queryAllAssetType+"/"+stationCode+"/"+pageNum;
						}else if(tabId=="2"){ //区域
							$("#content-first").css("display","none");
							$("#content-second").css("display","block");
							divId="#content-second";
							$("#TypeURL").removeClass("ui-btn-active");
							$("#areaURL").addClass("ui-btn-active");
							queryURL=AssertAttrWSURL.queryAllArea+"/"+stationCode+"/"+pageNum;
						}
 

4.特殊情况下选中相关问题连接没有加载

   解决的方案有两种:

  1.采用非ajax调用(data-ajax='false',rel="external" , data-ajax="false"

  2.采用同一个页面多个page模式,采用pageshow加载并初始化。

 

 

 

 

 

 

分享到:
评论
7 楼 PassWordPort 2012-06-18  
longgangbai 写道
PassWordPort 写道
1.页面转场时,当前页会先回到顶部,再跳转到目标页
相信在jquery mobile 1.1.0 版本出来之前,每个人都会遇到的问题。页面短的还好,假如页面内容很长,每次页面转换时都能明显的看到滚动条自动回到顶部的一下操作,更可怕的是当你返回上一页时,jquery mobile会恢复你上次浏览的位置,滚动条又从顶部跳回你之前的地方。
这种页面的错顿感严重影响用户体验,特别是在android的手机上。各种搜索引擎无果后,曾经我避免把页面长度做得超过1屏,也尝试修改jq mobile的源码(但效果不好),折磨了一段时间后,迎来了jquery mobile的更新,然后 1.1.0版本解决了这个问题。
所以如果还被这个问题困扰的同学们,赶紧去下新版的jq mobile。


我用的就是jq mobile 1.1.0 版本,也不行。

你的jquery的版本是多少呀?最好是1.64或者1.7



我用的phonegap 1.8 + jquery mobile 1.1.0 + jquery 1.7.1还是不行,每次跳转页面都会回到顶部,方便看看你这方面的 代码吗?
6 楼 longgangbai 2012-06-17  
qiu768 写道
把这段css加进去之后,页面上的字体显示效果变得很差


建议自定义主题样式,不要采用默认的样式。
5 楼 longgangbai 2012-06-17  
PassWordPort 写道
1.页面转场时,当前页会先回到顶部,再跳转到目标页
相信在jquery mobile 1.1.0 版本出来之前,每个人都会遇到的问题。页面短的还好,假如页面内容很长,每次页面转换时都能明显的看到滚动条自动回到顶部的一下操作,更可怕的是当你返回上一页时,jquery mobile会恢复你上次浏览的位置,滚动条又从顶部跳回你之前的地方。
这种页面的错顿感严重影响用户体验,特别是在android的手机上。各种搜索引擎无果后,曾经我避免把页面长度做得超过1屏,也尝试修改jq mobile的源码(但效果不好),折磨了一段时间后,迎来了jquery mobile的更新,然后 1.1.0版本解决了这个问题。
所以如果还被这个问题困扰的同学们,赶紧去下新版的jq mobile。


我用的就是jq mobile 1.1.0 版本,也不行。

你的jquery的版本是多少呀?最好是1.64或者1.7
4 楼 PassWordPort 2012-06-15  
1.页面转场时,当前页会先回到顶部,再跳转到目标页
相信在jquery mobile 1.1.0 版本出来之前,每个人都会遇到的问题。页面短的还好,假如页面内容很长,每次页面转换时都能明显的看到滚动条自动回到顶部的一下操作,更可怕的是当你返回上一页时,jquery mobile会恢复你上次浏览的位置,滚动条又从顶部跳回你之前的地方。
这种页面的错顿感严重影响用户体验,特别是在android的手机上。各种搜索引擎无果后,曾经我避免把页面长度做得超过1屏,也尝试修改jq mobile的源码(但效果不好),折磨了一段时间后,迎来了jquery mobile的更新,然后 1.1.0版本解决了这个问题。
所以如果还被这个问题困扰的同学们,赶紧去下新版的jq mobile。


我用的就是jq mobile 1.1.0 版本,也不行。
3 楼 qiu768 2012-06-12  
把这段css加进去之后,页面上的字体显示效果变得很差
2 楼 longgangbai 2012-05-16  
Frederic 写道
你好,我用了你的方法,转场闪屏似乎没有解决,请赐教!

兄弟,采用jquery-mobile-1.1.0的版本吗?如果不是那么可能还是有问题,最好采用1.1.0版本。
1 楼 Frederic 2012-05-15  
你好,我用了你的方法,转场闪屏似乎没有解决,请赐教!

相关推荐

    jquerymobile学习小项目

    **jQuery Mobile 学习小项目** `jQuery Mobile` 是一个基于 `jQuery` 库的轻量级、触屏友好的前端框架,专为移动设备设计,用于构建响应式和交互式的移动应用程序。这个项目旨在帮助新手快速入门 `jQuery Mobile` ...

    jquerymobile经验小结

    ### jQuery Mobile 经验小结 #### 一、概述 jQuery Mobile 是一款基于 HTML5 的移动设备框架,它为开发者提供了构建响应式网站、应用程序的能力。通过使用 jQuery Mobile,可以轻松地创建适用于不同屏幕尺寸的网页...

    jQuery mobile 开发案例

    **jQuery Mobile 开发案例** jQuery Mobile 是一个专为移动设备设计...通过研究这个案例,无论是初学者还是有经验的开发者,都能更深入地理解和掌握 jQuery Mobile 的工作原理和使用技巧,从而提升移动前端开发能力。

    jquery mobile 1.4.5demo和说明

    本篇将围绕 "jQuery Mobile 1.4.5demo和说明" 进行深入探讨,帮助开发者掌握这一版本的核心功能和使用技巧。 一、jQuery Mobile 1.4.5 简介 jQuery Mobile 1.4.5 是一个稳定且广泛使用的版本,它在前一版本的基础上...

    经典收藏 50个jQuery Mobile开发技巧集萃

    9. **创建移动WordPress主题**:jQuery Mobile可以轻松创建针对移动设备优化的WordPress主题,提升博客或网站在小屏幕设备上的表现。 10. **网站创建教程**:从基础到进阶,一系列教程指导如何使用jQuery Mobile...

    JqueryMobile常见问题整理

    在使用 jQuery Mobile 进行移动应用开发时,`pageinit` 是一个非常重要的事件,它会在每个页面加载时触发。然而,有时在页面跳转过程中可能会遇到 `pageinit` 事件被重复调用的问题,这可能会影响到页面的正常初始化...

    50个jQuery Mobile开发技巧集萃

    ### 50个jQuery Mobile开发技巧集萃 #### 1. Backbone移动实例 - **知识点**: 使用Backbone.js与jQuery Mobile结合开发移动应用。...通过学习和实践这些技巧,可以显著提升使用jQuery Mobile开发移动Web应用的能力。

    jquery mobile五子棋的实现

    总的来说,这个项目结合了jQuery Mobile的UI框架、CSS布局技巧、HTML内容构建、JavaScript交互逻辑,以及图像资源的运用,提供了一个可以在移动设备上玩的五子棋游戏。通过学习这个项目,开发者可以深入了解移动应用...

    jQuery Mobile Up and Running

    《jQuery Mobile Up and Running》是一本专为移动应用开发者准备的指南,主要聚焦于使用jQuery Mobile框架进行响应式和触控优化的Web应用开发。jQuery Mobile是一个轻量级、跨平台的JavaScript库,旨在简化HTML5应用...

    手机模拟器+jQueryMobile教程

    5. 动态加载与Ajax导航:jQueryMobile默认使用Ajax技术实现页面间的平滑过渡,但需注意处理页面依赖和初始化问题。 6. 自定义主题:使用Themeroller工具,可以快速定制符合品牌风格的主题色和样式。 7. 性能优化:...

    构建跨平台APP jQuery Mobile移动应用实战代码

    在提供的“jQueryMobile2源代码”中,你可以找到示例项目的结构和实现,这对于深入理解 jQuery Mobile 的工作原理和实践技巧非常有帮助。通过研究这些代码,你将能更好地掌握如何利用这个框架构建功能丰富的跨平台...

    jQuery Mobile First Look

    - **代码压缩**:使用压缩后的jQuery和jQuery Mobile文件,减小文件体积。 - **图片优化**:压缩图片文件,减少HTTP请求次数。 **4.3 响应式设计** 通过媒体查询和CSS3特性,使页面能够在不同尺寸的设备上呈现出...

    jquerymobile资料搜集

    Footable是一款与jQuery Mobile兼容的插件,用于处理在小屏幕设备上显示大型表格的问题。它能自动折叠长表格,使得内容在有限的屏幕空间内仍然清晰可读。Footable支持多种扩展,如排序、过滤和分页,为表格功能的...

    JQuery Mobile权威指南(中文扫描版)附源码

    《jQuery Mobile权威指南》由资深专家根据jQuery Mobile最新版本撰写,对jQuery Mobile的所有功能、特性、使用方法和开发技巧进行了全面而透彻的讲解,是系统学习jQuery Mobile的权威参考书。92个精心设计的经典案例...

    Sample of Master Mobile Web Apps with jQuery Mobile

    本书是针对那些希望使用jQuery Mobile框架来开发移动Web应用的开发者们的一份详尽指南。在深入探讨本书之前,我们先对jQuery Mobile做一个简单的介绍。 **jQuery Mobile** 是一个基于HTML5的用户界面系统,旨在为...

    jquery mobile 1.4.5

    考虑到移动设备的性能限制,jQuery Mobile 1.4.5 提供了多种优化技巧,如禁用默认的AJAX导航、减少主题样式或自定义事件处理,以提升应用的性能。 总结来说,jQuery Mobile 1.4.5 是一个功能丰富的框架,可以帮助...

Global site tag (gtag.js) - Google Analytics