专栏首页极客编程jQueryMobile快速入门

jQueryMobile快速入门

what

  jQuery Mobile是jQuery 在手机上和平板设备上的版本。它不仅会给主流移动平台带来jQuery核心库,而且会发布一个完整统一的jQuery移动UI框架。支持全球主流的移动平台。

使用

  要使用 jQuery Mobile,首先需要在开发的界面中包含如下3个内容:

  • CSS文件jquery.mobile-1.4.5.min.css
  • jQuery类库文件 jquery.min.js
  • jQuery Mobile文件 jquery.mobile-1.4.5.min.js <link rel="stylesheet" href="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.css"> <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script> <script src="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

结构

  一个jQuery Mobile页面时你需要创建三块基本内容(头,正文,尾),要在html文档中的 head 标签内填写:

<meta name="viewport" content="width=device-width, minimum-scale=1, maximum-scale=1">
<link rel="stylesheet" href="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.css">
<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

在body标签内填写:

<div data-role="page" id="pageone">
<div data-role="header"><h1>Page Title</h1></div><!-- /header -->
<div data-role="content"><p>Jquery mobile Test</p></div><!-- /content -->
<div data-role="footer"><h4>Page Footer</h4></div><!-- /footer -->
</div><!-- /page -->

代码解释:

  • data-role="page" 是显示在浏览器中的页面
  • data-role="header" 创建页面上方的工具栏(常用于标题和搜索按钮)
  • data-role="content" 定义页面的内容,比如文本、图像、表单和按钮,等等
  • data-role="footer" 创建页面底部的工具栏

在jQuery Mobile中,可以在单一 HTML 文件中创建多个页面。通过唯一的id来分隔每张页面,在后面的代码编写中,推荐使用以上的构建方法来建立页面。

超链接

jQuery Mobile中的一个“page”结构一般使用一个DIV来组织。现在你可以使用前一节中的模板来创建一个包含三个跳转到其他页面的链接的导航页面:

<div data-role="page" id="menu">
   <div data-role="header"><h1>Menu</h1></div><!-- /header -->
   <div data-role="content">   
      <p>What vehicles do you like?</p>      
      <p><a href="#Cars">Cars</a></p>
      <p><a href="#Trains">Trains</a></p>
      <p><a href="#Planes">Planes</a></p>      
   </div><!-- /content -->
   <div data-role="footer" data-position="fixed"><h4>Page Footer</h4></div><!-- /footer -->
</div><!-- /page -->

  上面创建的导航页是我们在浏览器看到的第一个页面,接下来我们再添加三个“page”,他们有不同的id:Cars, Planes,Trains。

<div data-role="page" id="Cars">
   <div data-role="header">
      <h1>Cars</h1>
   </div><!-- /header -->
   <div data-role="content">   
      <p>We can add a list of cars</p>
   </div><!-- /content -->
   <div data-role="footer">
      <h4>Page Footer</h4>
   </div><!-- /footer -->
</div><!-- /page -->
<!-- Start of third page -->
<div data-role="page" id="Trains">
   <div data-role="header">
      <h1>Trains</h1>
   </div><!-- /header -->
   <div data-role="content">   
      <p>We can add a list of trains</p>
   </div><!-- /content -->
   <div data-role="footer">
      <h4>Page Footer</h4>
   </div><!-- /footer -->
</div><!-- /page -->
<!-- Start of fourth page -->
<div data-role="page" id="Planes">
   <div data-role="header">
      <h1>Planes</h1>
</div><!-- /header -->
   <div data-role="content">   
      <p>We can add a list of planes</p>
   </div><!-- /content -->
   <div data-role="footer">
   <h4>Page Footer</h4>
</div><!-- /footer -->
</div><!-- /page -->

现在我们已经建立完成了,去试一试吧

button

在jQuery Mobile中,按钮可通过三种方式创建:

使用 < button > 元素 使用 < input > 元素 使用带有 data-role="button" 的 < a >元素

<button>按钮</button>
<input type="button" value="按钮">
<a href="#" data-role="button">按钮</a>

  在 jQuery Mobile 中,按钮会自动样式化,让它们在移动设备上更具吸引力和可用性。我们推荐使用带有 data-role="button" 的< a >元素在页面间进行链接,使用< input >或< button >元素进行表单提交。

  默认情况下,按钮占满整个屏幕宽度。如果你想要一个仅是与内容一样宽的按钮,或者如果您想要并排显示两个或多个按钮,请添加 data-inline="true",如果想组合按钮,可以使用 data-role="controlgroup" 属性和 data-type="horizontal|vertical" 一起使用来规定是否水平或垂直组合按钮。

<a href="#pagetwo" data-role="button" data-inline="true">访问第二个页面</a>
<div data-role="controlgroup" data-type="horizontal">
    <a href="#anylink" data-role="button">按钮 1</a>
    <a href="#anylink" data-role="button">按钮 2</a>
    <a href="#anylink" data-role="button">按钮 3</a>
</div>

可折叠块

  可折叠块允许您隐藏或显示内容 - 对于存储部分信息很有用。如需创建一个可折叠的内容块,需要为容器添加 data-role="collapsible" 属性。在容器(div)内,添加一个标题元素(H1-H6),后跟您想要进行扩展的 HTML 标记,默认情况下,内容是被折叠起来的。如需在页面加载时展开内容,请使用 data-collapsed="false":

<div data-role="collapsible" data-collapsed="false">
    <h1>点击我 - 我可以折叠!</h1>
    <p>我是可折叠的内容。</p>
</div>

当然可折叠块允许嵌套,如下代码:

<div data-role="collapsible">
    <h1>点击我 - 我可以折叠!</h1>
    <p>我是被展开的内容。</p>
    <div data-role="collapsible">
        <h1>点击我 - 我是嵌套的可折叠块!</h1>
        <p>我是嵌套的可折叠块中被展开的内容。</p>
    </div>
</div>

panel

   jQuery Mobile中的面板会在屏幕的左侧向右侧划出。可以通过指定id的div元素添加 data-role="panel" 属性来创建面板。

<div data-role="panel" id="myPanel">
  <h2>面板标题..</h2>
  <p>文本内容..</p>
</div>

panel标记必须置于头部、内容、底部组成的页面之前或之后。

<div data-role="page" id="pageone">
  <div data-role="panel" id="myPanel"> 
    <h2>面板头部..</h2>
    <p>面板中的一些文本内容..</p>
  </div>
  <div data-role="header">
      <h1>汇智网</h1>
   </div>
 </div>

  要访问面板,需要创建一个指向面板的链接,点击该链接即可打开面板:

<a href="#myPanel" class="ui-btn ui-btn-inline">打开面板</a>

  默认情况下,面板会显示在屏幕的左侧。如果想让面板出现在屏幕的右侧,可以指定 data-position="right" 属性。

<a href="#myPanel" class="ui-btn ui-btn-inline"  data-position="right">打开面板</a>

  可以通过使用 data-display 属性来控制面板的展示方式:

<div data-role="panel" id="overlayPanel" data-display="overlay"> <!--覆盖显示-->
<div data-role="panel" id="revealPanel" data-display="reveal">   <!--滑动显示-->
<div data-role="panel" id="pushPanel" data-display="push">       <!--推动显示-->
</div></div></div>

  可以使用按钮来关闭面板:仅需要在面板的div中添加 data-rel="close" 属性。

<div data-role="panel" id="myPanel"> 
  <h2>面板头部..</h2>
  <p>面板中的一些文本内容..</p>
  <a href="#pageone" data-rel="close" class="ui-btn ui-btn-inline">关闭面板</a>
</div>

更多示例内容及在线练习参考: http://www.hubwiz.com/course/5640589f9bb934437751117b/

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 用Vue.js开发一个电影App的前端界面

    我们大多数人使用在线流媒体服务(如Netflix)观看我们最喜欢的电影或者节目。这篇文章将重点介绍如何通过使用vue.js 2 建立一个类似风格的电影流媒体WE...

    笔阁
  • 简单介绍一下vue2.0

    Vue是用于构建用户界面的渐进框架。作者尤雨熙特别强调它与其他的框架不同,Vue是渐进式的框架,可以逐步采用,不必一下就通过框架去重构项目。 另外Vue的核心库...

    笔阁
  • 一个EOS区块链RPC API接口的PHP SDK包

    作为我们Block Producer对社区利益的承诺的一部分,我们希望专注于构建有助于提高EOS平台采用率的工具/应用程序。与大多数大型应用程序一样,当你只有少...

    笔阁
  • bootstrap 进度条模拟温度计 原

    最近需要做一个类似温度计的图表,网上找了好久,也没有找到合适的,现根据bootstrap的进度条来模拟温度计,主要实现根据不同区间的数据来显示不同的颜色,并自适...

    tianyawhl
  • 万众期待:Hinton团队开源CapsNet源码

    【导读】前几天,Hinton团队的胶囊网络论文第一作者Sara Sabour将其源码在GitHub上开源,其实,该论文“Dynamic Routing Betw...

    WZEARW
  • Spring Cloud之极端续租间隔时间的影响

    本文基于某环境一个真实Case,它配置了非常极端的续租间隔时间。虽然知道服务注册的基本知识,但未深入了解过,正好基于这个Case学习下。

    码代码的陈同学
  • JNI实现源码分析【三 间接引用表】正文0x01: IndirectRefTable0x02: 作用域0x03: jobject到Object的映射0x04: JNI在背后默默做的事

    在JNI实现源码分析【二 数据结构】的参数传递一节中,我们提到,JNI为了安全性的考虑使用了形如jobject的结构来传递参数。而jobject被表述为指针,但...

    用户2930595
  • 编程小白 | 每日一练(187)

    这道理放在编程上也一并受用。在编程方面有着天赋异禀的人毕竟是少数,我们大多数人想要从编程小白进阶到高手,需要经历的是日积月累的学习,那么如何学习呢?当然是每天都...

    闫小林
  • 解决在jupyter notebook中

    昨天学习pandas和matplotlib的过程中, 在jupyter notebook遇到ImportError: matplotlib is require...

    py3study
  • 职场办公|我竟然不会高级筛选

    为了给同事们分发任务,需要根据同事分配的保护区,筛选出影像数据,最后将影像发给同事。

    罗罗攀

扫码关注云+社区

领取腾讯云代金券