`
hugang357
  • 浏览: 187414 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

jQuery Mobile高手必备的十大技巧和代码片段

阅读更多

与任何新技术一样,常常难就难在如何开始入手。

有鉴于此,我们整理出了与jQuery Mobile库有关的我认为最便利的一些技巧、方法和代码片段。

由于本文不是旨在全面介绍使用jQuery Mobile库的入门知识,会忽略掉一些相当浅显的东西,而是直接探讨一些相当棘手的东西。

另外欢迎留言,告诉我们你觉得哪些代码片段很实用,以及你所知道的其他任何实用的代码片段。

1、完整的基本页面

我一再发现自己需要为基本页面建立完整的标记。正因为如此,下面是创建一个基本页面所需要的全部代码。

  1. <!DOCTYPE html> 
  2. <html> 
  3. <head> 
  4. <title>Page Title</title> 
  5. <link rel="stylesheet" href="http://code.jquery.com/mobile/1.0a3/jquery.mobile-1.0a3.min.css" /> 
  6. <script type="text/javascript" src="http://code.jquery.com/jquery-1.5.min.js"></script> 
  7. <script type="text/javascript" src="http://code.jquery.com/mobile/1.0a3/jquery.mobile-1.0a3.min.js"></script> 
  8. </head> 
  9. <body> 
  10. <div data-role="page" id="home"> 
  11.  <div data-role="header"> 
  12.   <h1>Header</h1> 
  13.  </div> 
  14.  <div data-role="content"> 
  15.   <p>Content goes here</p> 
  16.  </div> 
  17.  <div data-role="footer"> 
  18.   <h4>Footer</h4> 
  19.  </div> 
  20. </div> 
  21. </body> 
  22. </html> 

2、何处添加额外的jQuery调用

当我开始使用jQuery的这个优秀扩展时,立即发现自己需要在触发移动插件之前改动页面上的内容。

结果发现,建议的解决办法就是只要把传统的jQuery调用放在装入移动插件的引用之前。这样,你的jQuery命令就有机会在库装入之前运行。下面是要遵照的模式:

  1. <link rel="stylesheet" href="http://code.jquery.com/mobile/1.0a3/jquery.mobile-1.0a3.min.css" /> 
  2. <script type="text/javascript" src="http://code.jquery.com/jquery-1.5.min.js"></script> 
  3. <script> 
  4.  $(document).ready(function() { 
  5.   // Your jQuery commands go here before the mobile reference 
  6.  }); 
  7. </script> 
  8. <script type="text/javascript" src="http://code.jquery.com/mobile/1.0a3/jquery.mobile-1.0a3.min.js"></script> 

何处添加额外的jQuery调用的代码

3、同时禁用所有链接的AJAX导航

尽管AJAX导航技术很出色,但有时候你倒希望禁用它。使用这一段jQuery代码,告诉jQuery Mobile库不要使用AJAX导航。

把它放在页面标题中jQuery Mobile库引用的后面。换句话说,库必须已经在该代码被引用之前装入完毕。

  1. <script> 
  2.  $(document).ready(function() { 
  3.   // disable ajax nav 
  4.   $.mobile.ajaxLinksEnabled = false
  5.  }); 
  6. </script> 

同时禁用所有链接的AJAX导航

4、阻止一些关键项目被截断

库的一项特性(或者是缺点,就看你的需要了)在于,它能够智能化地截断很长的项目,以适应用户界面元素。

我发现在两种情况下这可能很烦人。首先在列表项目中,我更喜欢看到全部文本。其次是在脚注文本中。一旦你在这里有好多个字符,它似乎就会开始用“…”来截断。使用这个简单的CSS来覆盖这两种默认情况。

对于列表项目:

  1. body .ui-li .ui-li-desc { 
  2.  white-space: normal; 
  3.  } 

对于脚注内容:

  1. body .ui-footer .ui-title { 
  2.  white-space: normal; 
  3.  } 
 

5、使用媒体查询来锁定设备

我在使用这个库时最先遇到的问题之一是,如何使用CSS来锁定设备(根据屏幕尺寸)。比如说,我想要为iPad设计两列布局、为智能手机设计单列布局。要做到这一点,最佳办法绝对是使用媒体查询。

只要一些简单的媒体查询已到位,你就能迅速让CSS锁定屏幕尺寸。有了这种锁定技术,我们就能依赖传统的CSS方法,根据可用的屏幕空间来迅速创建不同的布局。

这方面的两篇出色的文章是:

CSS-Tricks网站的《CSS媒体查询和使用可用空间

Stuff and Nonsense网站的《切合实际的CSS3媒体查询

6、用jQuery锁定平台

尽管我们很想为某些设备执行某些CSS,但我们也想只在特定的设备上运行jQuery。下面对来自Snipplr的一些代码作了改动,那样我很容易把jQuery的一部分隔离开来,以便根据用户的设备来运行。

  1. var deviceAgent = navigator.userAgent.toLowerCase(); 
  2.  var agentID = deviceAgent.match(/(iphone|ipod|ipad|android)/); 
  3.  if(agentID.indexOf("iphone")>=0){ 
  4.   alert("iphone"); 
  5.  } 
  6.  if(agentID.indexOf("ipod")>=0){ 
  7.   alert("ipod"); 
  8.  } 
  9.  if(agentID.indexOf("ipad")>=0){ 
  10.   alert("ipad"); 
  11.  } 
  12.  if(agentID.indexOf("android")>=0){ 
  13.   alert("android"); 
  14.  } 

7、为表单动作属性的目标使用完全路径

jQuery Mobile库的一个不便之处似乎在于,很难找到张贴表单的目标页面;也就是说,除非你使用来自网站根目录的完全路径。

比如说,我发现这个表单标签从来找不到其目标:

  1. <form action=" form-handler.php " method="get" > 

而像这样的完全路径可以起到应有的工作:

  1. <form action="/current-directory/form-handler.php" method="get" > 

另外,还要确信来自表单处理程序的结果会生成一个完整、有效的jQuery Mobile页面,如第一个技巧所示。

8、创建弹出式对话框

jQuery Mobile库的一项便利特性就是内置的弹出内容或对话框特性。创建这项便利的特性简单得很。基本上只要添加需要链接的属性,如下所示:data-rel="dialog"。

注意两点。首先,目标页面必须是完整的jQuery Mobile页面,如第一个技巧所概述。其次,这只适用于外部页面;它必须是完整的单独页面才能正常工作。

  1. <a href="#pop.html" data-rel="dialog">Pop up!</a>  

9、“Cancel”和“Save”组合按钮

这段代码满足了两个基本要求。第一个要求是,让两个按钮彼此相邻。幸好,jQuery Mobile库有一种内置的列结构,只要使用标签和合适的类,很容易利用这种结构,如下所示。第二个要求是,让两个按钮有不同的主题。这段代码直接来自说明文档,我把它留在手边,以便经常使用。

  1. <fieldset> 
  2.  <div><button type="submit" data-theme="c">Cancel</button></div> 
  3.  <div><button type="submit" data-theme="b">Submit</button></div> 
  4. </fieldset> 

10、自行创建列结构

我在竭力为多个设备设计最佳的单个页面结构时,发现自己经常结合运用上述的媒体查询技巧和“随意顺序的列”(columns in any order)方法。

幸好,Web开发人员很早以前就弄清楚了如何移动列。结合运用这个方法和媒体查询,我们就可以根据所处理的屏幕尺寸,很容易创建各种结构。

Position Is Everything网站展示了最容易使用的方法之一。

结论

jQuery Mobile库处理起来很方便。只要稍微下一点工夫,它就能获得出色的效果。考虑到它目前仍处于测试阶段,所以它起步不错。但愿你在不断钻研这个新的库时,这些快速技巧能让你不断前进。

分享到:
评论

相关推荐

    jQuery、jQueryUI及jQueryMobile技巧与示例

    资源名称:jQuery、jQuery UI及jQuery Mobile技巧与示例内容简介:《jQuery、jQuery UI及jQuery Mobile技巧与示例》包括jQuery、jQuery UI、jQuery Mobile以及jQuery插件四部分内容。第一部分介绍jQuery核心库,从...

    jQuery Mobile十大常用技巧

    以下是对标题和描述中提到的jQuery Mobile十大常用技巧的详细解释: 1. **禁止截断列表和按钮内容**: 当jQuery Mobile中的列表项或按钮文本过长时,默认会自动截断。你可以通过添加CSS样式来阻止这种行为。例如,...

    jQuery Mobile快速入门源代码

    这个压缩包包含了《jQuery Mobile快速入门》这本书的配套源代码,适合初学者深入理解jQuery Mobile的基础用法和实践操作。 jQuery Mobile 的核心特性包括: 1. **统一的用户界面 (UI) 框架**:jQuery Mobile 提供...

    android jqueryMobile 类库和实例源代码

    本篇文章将深入探讨jQuery Mobile在Android环境中的应用,以及如何利用提供的类库和实例源代码进行开发。 一、jQuery Mobile简介 jQuery Mobile是一个轻量级的、触屏优化的JavaScript框架,专为构建跨平台、跨设备...

    jQuery Mobile开发常用技巧

    本文将深入探讨 jQuery Mobile 开发过程中的十大实用技巧与代码片段,帮助您更加高效地进行移动 Web 应用的开发。 #### 二、完整的基本页面结构 构建一个基本的 jQuery Mobile 页面通常需要以下结构: ```html &lt;!...

    jQuery Mobile教学代码

    jQuery Mobile教学课件及示例代码

    jQuery mobile相册的一种样式

    在IT行业中,jQuery Mobile是一种广泛使用的前端框架,它专门用于构建响应式和触屏友好的移动Web应用。jQuery Mobile提供了一系列的UI组件和交互效果,其中包括我们今天要讨论的主题——相册样式。在这个主题下,...

    jQueryMobile源代码

    在这个“jQueryMobile源代码”中,我们可以深入研究其内部机制,了解它是如何实现这些功能的。 首先,jQuery Mobile的核心概念是“页面(Pages)”和“面板(Panels)”。页面是应用的基本单元,而面板则用于提供...

    jQuery Mobile源代码.zip

    总结来说,jQuery Mobile的源代码是一个宝贵的教育资源,它展示了如何利用jQuery和前端技术构建高性能的移动应用。通过深入研究源码,开发者不仅可以提升自己的jQuery技能,还能了解到移动应用开发的最佳实践和技巧...

    jquery ui及jquery mobile技巧与示例源代码

    原书名:jQuery, jQuery UI, and jQuery Mobile: Recipes and Examples 原出版社: Addison-Wesley Professional 作者: (荷)Adriaan de Jonge (美)Phil Dutson 译者: 包勇明 程学彬 出版社:人民邮电出版社 ...

    jQuery Mobile 所需要的部署文件

    jQuery Mobile 是一个轻量级的、基于 jQuery 库的框架,专为移动设备上的网页应用设计,它提供了丰富的用户界面(UI)组件和交互效果,让开发者能够快速构建响应式和触控友好的Web应用程序。这个资源包以“Hello ...

    Jquery mobile 从设计到开发

    jQuery Mobile 是一个广泛使用的框架,特别适合于移动设备和桌面浏览器。它允许开发者使用HTML5、CSS3和JavaScript来创建响应式网页应用。这个框架之所以在移动开发中受到青睐,是因为它可以将现有的网页转换成触摸...

    jQueryMobile-HTML5模板

    通过研究这些模板,开发者可以了解到jQuery Mobile的实践应用,进一步掌握移动Web开发的技巧。 **四、实战演练** 学习jQuery Mobile模板时,可以尝试以下步骤: 1. **代码审查**:仔细阅读模板的HTML和CSS代码,...

    jQuery Mobile参考手册

    3.jQuery Mobile 使用了极少的 HTML5、CSS3、JavaScript 和 AJAX 脚本代码来完成页面的布局渲染。 4.通过使用jQuery Mobile 可以 "写更少的代码,做更多的事情" : 它可以通过一个灵活及简单的方式来布局网页,且兼容...

    JQueryMobile js/css/1.2版本/1.4版本

    在描述中提到的文件“JQueryMobile1.4.5.min.js”和“JQueryMobile1.4.5.min.css”是1.4版本的核心文件。`.min`表示这些文件已经过压缩,减少了文件大小,提高了页面加载速度。`js`文件包含了JQuery Mobile的...

    jQuery Mobile实战源码

    jQuery Mobile通过数据属性(data-attributes)和增强的HTML标记来定义这些组件的行为,使得代码更简洁且易于维护。 在源码中,你会发现`jquery.mobile.js`是主要的JavaScript库,它包含所有jQuery Mobile的功能。...

    jquerymobile设计完整例子

    jQuery Mobile 是一个轻量级、响应式的前端框架,专为触摸设备的网页设计和开发而构建。它简化了创建移动友好的网页应用的过程,提供了丰富的组件和交互效果,使得开发者可以快速构建功能丰富的移动界面。在“jQuery...

    jQuery Mobile音乐播放实例源码

    jQuery Mobile音乐播放代码 为什么使用 jQuery Mobile? 通过使用jQuery Mobile 可以 "写更少的代码,做更多的事情" : 它可以通过一个灵活及简单的方式来布局网页,且兼容所有移动设备。 lamp 不同设备使用了...

    jQuery Mobile快速入门.pdf

    #### 五、示例代码与实践技巧 - **HTML 结构**:合理规划页面结构是成功使用 jQuery Mobile 的关键。 - **CSS 样式**:了解和调整 CSS 样式有助于实现更美观的设计。 - **JavaScript API**:掌握 jQuery Mobile ...

Global site tag (gtag.js) - Google Analytics