美文网首页
JQueryMobile的使用

JQueryMobile的使用

作者: 我不叫奇奇 | 来源:发表于2017-02-28 19:16 被阅读103次

    一. JQueryMobile

    1. jQuery Mobile is a HTML5-based user interface system designed to make responsive web sites and apps that are accessible on all smartphone, tablet and desktop devices.

    2. JQM主要分为四部分:

        页面&导航
        CSS框架
        组件
        表单控件
      

    3 使用JQM的步骤

      1) 项目中引入jquery1.8+版本
    
      2)  项目创建jqm目录,引入jqm必需资源文件
    
            jquery-mobile.css
            jquery-mobile.js
            images/...
    
      3)  创建html文件,引入必需的css和js,并设置viewport
    
             <meta name="viewport" content="width=device-width,initial-scale=1>
    
      4) body中data-role="page"元素
    

    注意:

    • jqm的html文件中,body中必须至少有一个page,若用户未提供,jqm自动添加
    • body中可以声明多个page,但默认只有第一个可以显示
    • jqm中的所有的网页内容不能直接至于body中,必须至于page中
    • jqm中的所有样式都是通过预定义class来设置的,开发者可以指定元素的class,也可以为元素指定data-*扩展属性来实现让jqm添加class的功能

    二. jqueryMobile-page跳转及过场动画

    1. 页面跳转可以使用a/button/input等,推荐使用a-会自动添加过场动画

    2. 可以跳转到外部的完整HTML页面;也可以跳转到当前HTML中的另一个page,如
      1)跳转到外部完整的HTML页面
      <a href="xx.html">
      2)跳转到当前HTML中的另一个page
      <a href="#pageID">

    1. 已模态框形式打开另一个page
      <a href="#pageID" data-rel="dialog">

      1. JQM为页面切换添加了非常丰富的过渡动画,使用方法

        <a href="目标页面" data-transition="动画效果名称">
        

        可用的动画效果有:

        fade:默认动画
        pop:弹出动画
        slide:滑动动画
        slideup:向上滑动动画
        trun:翻转动画
        flip:翻转动画
        flow:流动动画
        none:无动画

    三. jqueryMobile-按钮

    1. 可以使用A.button.input元素实现按钮的样式

    2. 可以使用data-role="button"属性实现按钮样式,也可以指定class实现按钮的样式,如ui-btn ui-corner-all ui-shadow

    3. 按钮默认是块级显示,可以使用ui-btn-inline实现行内按钮

    4. 按钮上可以有文字和图标,若存在图标,必须指定与文字的位置关系,可选值
      btn-icon-left
      btn-icon-right
      btn-icon-bottom
      btn-icon-top

    创建带图标的按钮,图标功能:后退,前进,刷新,配置,用户,定位,主页,对勾....
    
    1. 按钮可以放到page的header里
     header中的第一个按钮默认处于左侧,第二个按钮处于右侧,一般只放两个
     
     <div data-role="header">
    
       <a href="#">按钮</a> 默认就是按钮效果
    
     </div>
    

    四. jqueryMobile-导航条

    1. 基本结构

         <div data-role="navbar">
           <ul>
             <li><a href="#"></a>
      
           </ul>
      
         </div>
      
    2. 注意

         导航条中一般最多只能有五个项目,超过5个会在一行中显示2个
      
         导航条可以出现在page的Header/Main/Footer
      
         处于Header和Footer中的navbar默认会占满整行,并和标题字错开
      

    五. jqueryMobile-load加载器

      显示加载器: $.mobile.loading("show");
    
      取消加载器:$.mobile.loading("hidden");
    

    六. jqueryMobile-panel(面板)

    1. 面板在目前版本的jqp中只能放在page中,header之前和footer之后

        <div data-role="page">
      
             <div data-role="panel" id="p1"></div>
      
             <div data-role="header"></div>
      
             <div data-role="body">
      
                 <a href="#面板ID">打开面板</a>
      
             </div>
      
             <div data-role="footer"></div>
      
             <div data-role="panel" id="p1"></div>
      
        </div>
      
    2. 面板组件可以指定出现位置和打开方式

        data-position="left/right"
      
        data-display = "reveal/overlay/push"
      

    七. jqueryMobile-折叠组件(collapsible)和手风琴效果(collapsibleset)

    1. 折叠组件

      <div data-role="collapsible">
        <h3>标题字</h3>
        <div>折叠的内容</div>
      </div>
      
    2. 手风琴

      <div data-role="collapsibleset">
      
         <div data-role="collapsible">
           <h3>标题字</h3>
           <div>折叠的内容</div>
         </div>
      
         <div data-role="collapsible">
           <h3>标题字</h3>
           <div>折叠的内容</div>
         </div>
      
      </div>
      

    八. 关于jqm的手册

    1. 下载安装包Demo-初期

    2. 完整的API列表(在线) - 后期

      http://api.jquerymobile.com

    九. 关于jqm page的切换-深入探讨

    1. 一个HTML声明多个page
     不足:即使不显示的Page,初始化时也会被客户端请求下来
    
    1. 一个HTML只声明一个Page,通过超链接进行页面跳转
     1)jqm已经完全改写了超链接的默认行为-把同步请求转为AJAX请求
    
     2) 异步请求得到的HTML页面,只会保留其中的第一个page,添加到DOM树上,其他所有内容全部删除。
    
     3) 推荐一个项目中只有起始页是完整的HTML页面,其他被跳转到的页面都是page片段-只包含一个page的声明
    
     4)jqm项目中所有的HTML页面中元素的id应该是全局唯一的
    

    相关文章

      网友评论

          本文标题:JQueryMobile的使用

          本文链接:https://www.haomeiwen.com/subject/vsqfgttx.html