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>