- 构建跨平台APP:jQuery Mobile移动应用实战(第2版) (跨平台移动开发丛书)
- 李柯泉
- 939字
- 2024-10-30 00:11:24
3.2 原理解析
完成上一节的内容后,读者就可以将HTML页面打包成apk文件供手机使用了,当然也可以打包成供iOS或WP使用的文件。下面在页面中引入jQuery Mobile。
提示
jQuery和jQueryMobile都不需要安装,可以百度搜索“jquery-2.1.4.min.js”或“jquery.mobile-1.4.5”来下载我们需要的js文件,然后直接在文档中引入即可,本书的jquery.mobile-1.4.5所有css和js文件基本都是使用的官方网络地址,读者也可以下载到本地。
首先打开Sublime,新建一个页面,在其中插入范例3-2中第6~8行的代码。
【范例3-2 在页面中引入jQuery Mobile】
01 <! DOCTYPE html> 02 03 <head> 04 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 05 <title>无标题文档</title> 06 <! --jQuery Mobile需要的CSS样式--> 07 <link rel="stylesheet" href="http://code.jquery.com/mobile/latest/jquery.mobile.min.css" /> 08 <! --jQuery支持库--> 09 <script src="jquery-2.1.4.min.js"></script> 10 <! --jQuery Mobile需要的JS文件--> 11 <script src="http://code.jquery.com/mobile/latest/jquery.mobile.min.js"></script>12 </head> 13 <body> 14 <! --这里面加入内容--> 15 </body> 16 </html>
因为没在页面中加入任何内容,所以页面打开后将是一片空白。那么引入的文件分别有什么用呢?
首先jquery-2.1.4.min.js文件引入了jQuery脚本,可以不必理会,而jquery.mobile.min.css则是将来使用JQuery Mobile进行设计时所使用的样式文件。
到了这里,相信读者已经能猜到jquery-2.1.4.min.js的作用了,它使用脚本选择页面中的元素,然后将对应的样式加载到相应的元素上去。
提示
实际上,这一部分用到的全都是jQuery Mobile中的基础内容,但是如果能够充分理解这部分内容,就可以随心所欲地使用jQuery Mobile进行开发了。
3.2.1 选择元素
jQuery Mobile选择元素的方法有很多,这里整理出以下几种。
(1)可以利用CSS选择器对元素进行直接选取。
$(document) //选择整个文档对象 $('#myId') //选择ID为myId的网页元素 $('divmyClass') //选择class为myClass的div元素 $('input[name=first]') //选择name属性等于first的input元素
(2)可以利用jQuery Mobile的特有表达式对元素进行过滤。
$('a:first') //选择网页中第一个a元素 $('tr:odd') //选择表格的奇数行 $('#myForm :input') //选择表单中的input元素 $('div:visible') //选择可见的div元素 $('div:gt(2)') //选择所有的div元素,除了前3个 $('div:animated') //选择当前处于动画状态的div元素
jQuery Mobile多是使用对元素的data-role属性进行设置的方式,来确认使用了哪种控件,若是在页面中有如下内容:
<div data-role="page"></div>
那么,要获取这个元素则需使用如下语句:
$("div[data-role=page]");
提示
在HTML 5中单引号和双引号是通用的,甚至在表明一些属性的值时可以不用引号,但是一旦使用必须成对,不可以出现一个左单引号配一个右双引号的现象。
3.2.2 设置属性
刚刚获得了页面中元素的属性,现在就应该来为元素设置样式了,jQuery中为元素设置样式有以下几种方法。
● 可以为元素设置宽度和高度,可使用的方法有width(width_x)与height(height_x),其中的参数即是要为元素设置的尺寸。
● 可以直接为元素加入CSS样式,如addClass("page_cat"),即是将名为page_cat的样式设置在元素上。jQuery Mobile中大多使用了这种方法。
● 还有jQuery自带的CSS类可以单独改变元素的某样式,但是由于使用过于烦琐,并且在大型程序中不能很好维护,因此用得较少。