JQuery Mobile【页面(整体),过渡,按钮】

JQuery 页面

<!DOCTYPE html>
<html lang="en">
<head>

    <!-- meta使用viewport以确保页面可自由缩放 -->
    <meta name="viewport" content="width=device-width, initial-scale=1" charset="utf-8">

    <!-- 引入 jQuery Mobile 样式 -->
    <link rel="stylesheet" href="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.css">

    <!-- 引入 jQuery 库 -->
    <script src="http://apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script>

    <!-- 引入 jQuery Mobile 库 -->
    <script src="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

</head>
<body>
<div data-role="page">

    <div data-role="header">
        <h1>欢迎来到我的主页</h1>
    </div>

    <div data-role="main" class="ui-content">
        <p>我现在是一个移动端开发者!!</p>
    </div>

    <div data-role="footer">
        <h1>底部文本</h1>
    </div>

</div>
</body>
</html>

  • data-role="page" 是在浏览器中显示的页面。
  • data-role="header" 是在页面顶部创建的工具条 (通常用于标题或者搜索按钮)
  • data-role="main" 定义了页面的内容,比如文本, 图片,表单,按钮等。
  • "ui-content" 类用于在页面添加内边距和外边距。
  • data-role="footer" 用于创建页面底部工具条。
  • 在这些容器中你可以添加任何 HTML 元素 - 段落, 图片, 标题, 列表等

jQuery Mobile 依赖 HTML5 data-* 属性来支持各种 UI 元素、过渡和页面结构。不支持它们的浏览器将以静默方式弃用它们。

 

在页面中添加 jQuery Mobile

使用 jQuery Mobile, 你可以在单个 HTML 文件中创建多个不同的页面。

你可以使用不同的href属性来区分使用同一个唯一id的页面:

<!DOCTYPE html>
<html lang="en">
<head>

    <!-- meta使用viewport以确保页面可自由缩放 -->
    <meta name="viewport" content="width=device-width, initial-scale=1" charset="utf-8">

    <!-- 引入 jQuery Mobile 样式 -->
    <link rel="stylesheet" href="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.css">

    <!-- 引入 jQuery 库 -->
    <script src="http://apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script>

    <!-- 引入 jQuery Mobile 库 -->
    <script src="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

</head>
<body>
<div data-role="page" id="one">
    <div data-role="header">
        <h1>My Web</h1>
    </div>
    <div data-role="main" class="ui-content">
        <a href="#two">two</a>
    </div>
    <div data-role="footer">
        <h1>buttom</h1>
    </div>
</div>

<div data-role="page" id="two">
    <div data-role="header">
        <h1>Second Web</h1>
    </div>
    <div data-role="main" class="ui-conotent">
        <a href="#one">one</a>
    </div>
    <div data-role="footer">
        <h1>buttom</h1>
    </div>
</div>
</body>
</html>

 当web应用有大量的内容(文本,图片,脚本等)将会严重影响加载时间。

不想使用内页链接可以使用外部文件:

<a href="externalfile.html">访问外部文件</a>

页面作为对话框使用

对话框是用于显示页面信息显示或者表单信息的输入。

在链接中添加data-rel="dialog"让用户点击链接时弹出对话框:

<!DOCTYPE html>
<html lang="en">
<head>

    <!-- meta使用viewport以确保页面可自由缩放 -->
    <meta name="viewport" content="width=device-width, initial-scale=1" charset="utf-8">

    <!-- 引入 jQuery Mobile 样式 -->
    <link rel="stylesheet" href="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.css">

    <!-- 引入 jQuery 库 -->
    <script src="http://apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script>

    <!-- 引入 jQuery Mobile 库 -->
    <script src="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

</head>
<body>
<div data-role="page" id="one">
    <div data-role="header">
        <h1>My Web</h1>
    </div>

    <div data-role="main" class="ui-content">
        <!--此处的a中的 href的url应该指向带有data-dialog="true"才会有对话框弹出-->
        <a href="#two">welcome</a>
    </div>

    <div data-role="footer">
        <h1>BOTTOM TEXT</h1>
    </div>
</div>

<div data-role="page" data-dialog="true" id="two">
    <div data-role="header">
        <h1>My Web</h1>
    </div>

    <div data-role="main" class="ui-content">
        <a href="#"></a>
    </div>

    <div data-role="footer">
        <h1>BOTTOM TEXT</h1>
    </div>
</div>
</body>
</html>

此处有个可以加以修饰的地方,就是页面切换的形式

 只需要在<a>标签中加入data-transition

例如:

<!DOCTYPE html>
<html lang="en">
<head>

    <!-- meta使用viewport以确保页面可自由缩放 -->
    <meta name="viewport" content="width=device-width, initial-scale=1" charset="utf-8">

    <!-- 引入 jQuery Mobile 样式 -->
    <link rel="stylesheet" href="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.css">

    <!-- 引入 jQuery 库 -->
    <script src="http://apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script>

    <!-- 引入 jQuery Mobile 库 -->
    <script src="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

</head>
<body>
<div data-role="page" id="one">
    <div data-role="header">
        <h1>My Web</h1>
    </div>

    <div data-role="main" class="ui-content">
        <!--此处的a中的 href的url应该指向带有data-dialog="true"才会有对话框弹出-->
        <a href="#two" data-transition="turn">welcome</a>
    </div>

    <div data-role="footer">
        <h1>BOTTOM TEXT</h1>
    </div>
</div>

<div data-role="page"  id="two">
    <div data-role="header">
        <h1>My Web</h1>
    </div>

    <div data-role="main" class="ui-content">
        <a href="#"></a>
    </div>

    <div data-role="footer">
        <h1>BOTTOM TEXT</h1>
    </div>
</div>
</body>
</html>

JQuery 按钮

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

  • 使用 <button> 元素
  • 使用 <input> 元素
  • 使用带有 data-role="button" 的 <a> 元素
<!DOCTYPE html>
<html lang="en">
<head>

    <!-- meta使用viewport以确保页面可自由缩放 -->
    <meta name="viewport" content="width=device-width, initial-scale=1" charset="utf-8">

    <!-- 引入 jQuery Mobile 样式 -->
    <link rel="stylesheet" href="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.css">

    <!-- 引入 jQuery 库 -->
    <script src="http://apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script>

    <!-- 引入 jQuery Mobile 库 -->
    <script src="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

</head>
<body>
<div data-role="page" id="one">
    <div data-role="header">
        <h1>button test</h1>
    </div>

    <div data-role="main" class="ui-content">
        <!--此处的a中的 href的url应该指向带有data-dialog="true"才会有对话框弹出-->
        <a href="#two" data-role="button">button</a>
    </div>

    <div data-role="footer">
        <h1>BOTTOM TEXT</h1>
    </div>
</div>

<div data-role="page" data-dialog="true" id="two">
    <div data-role="header">
        <h1>My Web</h1>
    </div>

    <div data-role="main" class="ui-content">
        <a href="#"></a>
    </div>

    <div data-role="footer">
        <h1>BOTTOM TEXT</h1>
    </div>
</div>
</body>
</html>

直接用data-role="button",按钮会自动样式化,让它们在移动设备上更具吸引力和可用性。

按钮会自动样式化,让它们在移动设备上更具吸引力和可用性。

内联按钮

默认情况下,按钮占满整个屏幕宽度。如果你想要一个仅是与内容一样宽的按钮,或者如果您想要并排显示两个或多个按钮,请添加 data-inline="true"

<!DOCTYPE html>
<html lang="en">
<head>

    <!-- meta使用viewport以确保页面可自由缩放 -->
    <meta name="viewport" content="width=device-width, initial-scale=1" charset="utf-8">

    <!-- 引入 jQuery Mobile 样式 -->
    <link rel="stylesheet" href="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.css">

    <!-- 引入 jQuery 库 -->
    <script src="http://apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script>

    <!-- 引入 jQuery Mobile 库 -->
    <script src="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

</head>
<body>
<div data-role="page" id="one">
    <div data-role="header">
        <h1>button test</h1>
    </div>

    <div data-role="main" class="ui-content">
        <p>普通按钮</p>
        <a href="#two" class="ui-btn">访问第二个页面</a>
        <p>内联按钮</p>
        <a href="#two" data-role="button" data-inline="true">button</a>
    </div>

    <div data-role="footer">
        <h1>BOTTOM TEXT</h1>
    </div>
</div>

<div data-role="page" data-dialog="true" id="two">
    <div data-role="main" class="ui-content">
        <p>内联按钮 (一个接一个显示):</p>
        <!--class="ui-btn ui-btnn-inline效果一样"-->
        <a href="#one" class="ui-btn ui-btn-inline">返回第一个页面</a>
        <a href="#one" class="ui-btn ui-btn-inline">返回第一个页面</a>
        <a href="#one" class="ui-btn ui-btn-inline">返回第一个页面</a>
    </div>
</div>
</body>
</html>

组合按钮

jQuery Mobile 提供了一个简单的方法来将按钮组合在一起。

请把 data-role="controlgroup" 属性和 data-type="horizontal|vertical" 一起使用来规定是否水平或垂直组合按钮:

<!DOCTYPE html>
<html lang="en">
<head>

    <!-- meta使用viewport以确保页面可自由缩放 -->
    <meta name="viewport" content="width=device-width, initial-scale=1" charset="utf-8">

    <!-- 引入 jQuery Mobile 样式 -->
    <link rel="stylesheet" href="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.css">

    <!-- 引入 jQuery 库 -->
    <script src="http://apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script>

    <!-- 引入 jQuery Mobile 库 -->
    <script src="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

</head>
<body>
    <div data-role="page" id="one">
        <div data-role="header">
            <h1>组合按钮</h1>
        </div>

        <div data-role="main" class="ui-content">
            <div data-role="controlgroup" data-type="horizontal">
                <p>水平组合按钮:</p>
                <a href="#" class="ui-btn">1</a>
                <a href="#" class="ui-btn">2</a>
                <a href="#" class="ui-btn">3</a>
            </div><br>
        </div>

        <div data-role="controlgroup" data-type="vertical">
            <p>垂直组合按钮 (默认):</p>
            <a href="#" class="ui-btn">按钮 1</a>
            <a href="#" class="ui-btn">按钮 2</a>
            <a href="#" class="ui-btn">按钮 3</a>
        </div>

        <div data-role="footer">
            <h1>底部文本</h1>
        </div>
    </div>
</body>
</html>

默认情况下,组合按钮是垂直组合,它们之间没有外边距和空间。并且只有第一个和最后一个按钮是圆角,以便它们组合在一起的时候创建一个漂亮的外观。

后退按钮

如需创建后退按钮,请使用 data-rel="back" 属性(这会忽略锚的 href 值):

<!DOCTYPE html>
<html lang="en">
<head>

    <!-- meta使用viewport以确保页面可自由缩放 -->
    <meta name="viewport" content="width=device-width, initial-scale=1" charset="utf-8">

    <!-- 引入 jQuery Mobile 样式 -->
    <link rel="stylesheet" href="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.css">

    <!-- 引入 jQuery 库 -->
    <script src="http://apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script>

    <!-- 引入 jQuery Mobile 库 -->
    <script src="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

</head>
<body>
 <div data-role="page" id="one">
     <div data-role="header">
         <h1>Back Button Test</h1>
     </div>

     <div data-role="main" class="ui-content">
         <a href="#two" class="ui-btn">访问第二个页面</a>
     </div>

     <div data-role="footer">
         <h1>BOTTOM TEXT</h1>
     </div>
 </div>

<div data-role="page" id="two">
    <div data-role="header">
        <h1>返回按钮测试</h1>
    </div>

    <div data-role="main" class="ui-content">
        <a href="#" class="ui-btn" data-rel="back">返回</a>
    </div>
    <div data-role="footer">
        <h1>BOTTOM TEXT</h1>
    </div>
</div>
</body>
</html>

如果你需要使用更多的样式,每个样式类使用空格隔开,如: class="ui-btn ui-bt

添加图标到 jQuery Mobile 按钮

我们可以使用 ui-icon 类将图标添加到按钮上,并可以使用指定类来设置按钮位置。

n-inline ui-btn-corner-all ui-shadow"

默认情况下 <input> 按钮有圆角及阴影效果。 <a> 和 <button> 元素没有。

 如果只想显示图标的话,需要在class中添加形如:

<a href="#anylink" class="ui-btn ui-icon-search ui-btn-icon-notext">搜索</a>
<!DOCTYPE html>
<html lang="en">
<head>

    <!-- meta使用viewport以确保页面可自由缩放 -->
    <meta name="viewport" content="width=device-width, initial-scale=1" charset="utf-8">

    <!-- 引入 jQuery Mobile 样式 -->
    <link rel="stylesheet" href="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.css">

    <!-- 引入 jQuery 库 -->
    <script src="http://apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script>

    <!-- 引入 jQuery Mobile 库 -->
    <script src="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

</head>
<body>
<div data-role="page" id="one">
    <div data-role="main" class="ui-content">
        <a href="#" class="ui-btn ui-icon-arrow-l ui-btn-icon-left">左边箭头图标</a>
    </div>
</div>
</body>
</html>

定位图标

您也可以规定图标定位在按钮的什么部位:顶部(top)、右侧(right)、底部(bottom)、左侧(left)。

请使用 ui-btn-icon 属性来指定位置:

<a href="#anylink" class="ui-btn ui-icon-search ui-btn-icon-top">顶部</a>
<a href="#anylink" class="ui-btn ui-icon-search ui-btn-icon-right">右侧</a>
<a href="#anylink" class="ui-btn ui-icon-search ui-btn-icon-bottom">底部</a>
<a href="#anylink" class="ui-btn ui-icon-search ui-btn-icon-left">左侧</a>

移除圆圈

默认情况下,所有的图标都有一个灰色的圆圈。如果你不需要它,可以在元素中使用 "ui-nodisc-icon" 类:

<a href="#anylink" class="ui-btn ui-icon-search ui-btn-icon-left ui-nodisc-icon">去掉圆圈</a>

黑色、白色按钮

默认情况下,所有图标都是白色的。 如果需要改变图标颜色为黑色,可以在元素添加 "ui-alt-icon":

<a href="#anylink" class="ui-btn ui-icon-search ui-btn-icon-left ui-alt-icon">黑色</a>
<!DOCTYPE html>
<html lang="en">
<head>

    <!-- meta使用viewport以确保页面可自由缩放 -->
    <meta name="viewport" content="width=device-width, initial-scale=1" charset="utf-8">

    <!-- 引入 jQuery Mobile 样式 -->
    <link rel="stylesheet" href="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.css">

    <!-- 引入 jQuery 库 -->
    <script src="http://apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script>

    <!-- 引入 jQuery Mobile 库 -->
    <script src="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

</head>
<body>
<div data-role="page" id="one">
    <div data-role="header"><h1> icon </h1></div>

    <div data-role="main" class="ui-content">
        <p>"搜索" 按钮使用灰色使用圆圈(默认):</p>
        <a href="#" class="ui-btn ui-btn-inline ui-icon-search ui-btn-icon-left ui-corner-all ui-shadow">使用圆圈</a>

        <p>"搜索" 按钮使用不使用灰色圆圈(class="ui-nodisc-icon"):</p>
        <a href="#" class="ui-btn ui-btn-inline ui-icon-search ui-btn-icon-left ui-corner-all ui-shadow ui-nodisc-icon">不使用灰色圆圈</a>
    </div>
</div>
</body>
</html>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值