原文作者Stephanie Walter
我们已经完成了jQuery Mobile教程的应用构建部分,现在我们必须再用一点样式使应用更耀眼。
你可以在.zip文件中找到所有使用的样式文件。你允许以演示目的使用它们,但不能以商业目的使用。要样式化jQuery Mobile应用,有两个方案:删除jquery.mobile-1.0.1.css 文件然后重新写一个自己的,或者添加第三个css文件来替换某些jQuery Mobile样式。这里我们采取第二方案,因为jQuery Mobile基础设计大多符合本应用的要求。你也能使用jQuery Mobile Theme roller创建自定义主题而不必写太多的css。
这部分css改变了某些jQuery Mobile全局样式。
/*** general styling */
.ui-page.ui-body-c
{
background
:
url(images/bg.png)
;
box
-
shadow
:
0px
0px
30px
5px
rgba
(
107
,
105
,
105
,
0
.
3
)
inset
,
0px
0px
0px
1px
rgba
(
107
,
105
,
105
,
0
.
4
)
inset
;
}
.ui-icon.ui-icon-arrow-r
{
background-color
:
rgb
(
136
,
111
,
110
);
}
.ui-corner-all
,
.ui-corner-top
,
.ui-corner-bottom
,
.ui-corner-tl
,
.ui-corner-tr
,
.ui-corner-bl
,
.ui-header
.ui-btn-corner-all
,
.ui-listview-filter
.ui-btn-corner-all
,
#restau_infos
.ui-btn-corner-all
,
#contact_buttons
.ui-btn-corner-all
,
#notation
.ui-btn-corner-all
{
border
-
radius
:
0.2em
;
}
.ui-btn-active
{
background
:
#654644
;
/* Old browsers */
background
:
-
moz
-
linear
-
gradient
(
top
,
#654644
0
%,
#331c1b
100
%
);
/* FF3.6+ */
background
:
-
webkit
-
gradient
(
linear
,
left
top
,
left
bottom
,
color
-
stop
(
0
%,
#654644
)
,
color
-
stop
(
100
%,
#331c1b
));
/* Chrome,Safari4+ */
background
:
-
webkit
-
linear
-
gradient
(
top
,
#654644
0
%,
#331c1b
100
%
);
/* Chrome10+,Safari5.1+ */
background
:
-
o
-
linear
-
gradient
(
top
,
#654644
0
%,
#331c1b
100
%
);
/* Opera 11.10+ */
background
:
-
ms
-
linear
-
gradient
(
top
,
#654644
0
%,
#331c1b
100
%
);
/* IE10+ */
background
:
linear
-
gradient
(
top
,
#654644
0
%,
#331c1b
100
%
);
/* W3C */
color
:
#fff
!important
;
}
.ui-content
.choice_list
.ui-btn-active
.ui-link-inherit
,
.ui-btn-down-c
a
.ui-link-inherit
,
#home
.ui-btn-down-c
a
.ui-link-inherit
{
color
:
#fff
!important
;
}
img
{
max-width
:
100
%
;
height
:
auto
;
width
:
auto
;
-
webkit
-
box
-
sizing
:
border
-
box
;
-
moz
-
box
-
sizing
:
border
-
box
;
box
-
sizing
:
border
-
box
;
}
.ui-grid-a
.ui-block-a
,
.ui-grid-a
.ui-block-b
{
width
:
48
%
;
padding
:
1
%
;
}
第一行给应用背景添加纱化图片和box-shadow,这让整体设计有些深度。我们也改变了背景颜色。做过许多IOs应用,圆角有一点过度使用了(但这是 个人口味),因此本教程改变所有jQuery Mobile过重的0.6em圆角为更谨慎的0.2em半径的圆角。然后改变活动按钮的蓝色渐变为棕色。
最后部分是响应式图片技巧,使得他们很好的表现在各种浏览器上。
应用首页应该有一个特别的风格。首页必须给用户的一个好印象才愿意停留。现在我们需要用一个精致的logo作为应用的标识。如下是效果图
让我们看一下css
/*** home **/
#branding
{
background
:
url(images/logo.png)
no-repeat
;
width
:
322px
;
height
:
165px
;
text-indent
:-
999px
;
font-size
:
0px
;
margin
:-
10px
auto
0
auto
;
border-bottom
:
1px
solid
rgba
(
65
,
38
,
37
,
0
.
6
);
}
.choice_list
h1
{
margin-top
:
30px
;
font-size
:
18px
;
color
:
rgb
(
65
,
38
,
37
);
font-weight
:
normal
;
font-style
:
italic
;
padding
:
5px
0
6px
50px
;
background
:
url(images/pagination.png)
no-repeat
;
}
#home
.choice_list
h1
{
background-position
:
0
-16px
;
}
#home
.choice_list
h3
{
padding-top
:
10px
;
color
:
rgb
(
63
,
41
,
39
);
}
#home
.choice_list
.ui-btn-active
a
.ui-link-inherit
h3
{
color
:
#fff
;
}
.choice_list
img
{
padding
:
3px
;
}
正如你所见,我们用众所周知的技巧使标识的文本元素消失同时用logo取代。我们也用漂亮的图片加入h1问句的样式,然后加一些空白到列表元素他们将以图片居中。
如下是第二页效果:
下面是我们的css代码。
/* title bar */
.ui-header.ui-bar-a
{
background
:
url(images/header_bg.png)
;
}
.ui-header
.ui-title
{
text-indent
:-
9999px
;
font-size
:
0px
;
background
:
url(images/header_logo.png)
no-repeat
69
%
5px
;
height
:
33px
;
padding
:
5px
0
5px
50px
;
margin
:
0px
;
}
.ui-header
.ui-btn-up-a
{
background
:
rgba
(
255
,
255
,
255
,
0
.
1
);
box
-
shadow
:
none
;
}
.ui-header
.ui-btn-hover-a
{
background
:
rgba
(
0
,
0
,
0
,
0
.
3
);
box
-
shadow
:
none
;
}
我们再次使用文本替换技巧使标题文字消失然后放上标识图片。标题栏背景也变为棕色渐变,同样返回按钮也是如此。我们再添加图片到问句的样式。这里最后的#choisir_ville .ui-listview-filter是阻止过滤器的清除按钮下落而重置top padding。
这是页面效果
下面是css代码
/** choix du restaurant **/
#choisir_restau
.choice_list
h1
{
background-position
:
0
-132px
;
margin
:
10px
auto
20px
auto
;
}
#choisir_restau
.choice_list
a
{
padding-top
:
10px
;
color
:
rgb
(
63
,
41
,
39
);
}
#choisir_restau
.classement
{
display
:
inline
-
bloc
;
background
:
url(images/pagination.png)
no-repeat
0
-182px
;
height
:
22px
;
text-indent
:-
999px
;
font-size
:
0px
;
}
#choisir_restau
.one
{
width
:
30px
;
}
#choisir_restau
.two
{
width
:
55px
;
}
#choisir_restau
.three
{
width
:
75px
;
}
#choisir_restau
.four
{
width
:
99px
;
}
这里有趣的部分是星级显示的技巧。我们仅用一张包含四颗星的图片作为背景。奥义是改变这个元素的宽度,所以一,二还是三星的显示取决于类。我们也隐藏了文本。
最多的工作是在这个页面是
如下是css代码。
/** restau **/
#restau_infos
,
#contact_infos
{
color
:
rgb
(
63
,
41
,
39
);
font-size
:
14px
;
}
#restau_infos
h1
,
#contact_infos
h2
,
#notation
h2
{
color
:
rgb
(
63
,
41
,
39
);
font-size
:
18px
;
margin
:
0
auto
5px
auto
;
}
#restau_infos
p
,
#restau_infos
ul
,
#contact_infos
p
{
margin
:
2px
auto
5px
auto
;
}
#restau_infos
ul
{
padding
:
0
0
0
10px
;
}
#restau_infos
ul
li
{
list-style-type
:
square
;
margin-left
:
5px
;
}
#restau_infos
.ui-block-b
.ui-btn
{
font-size
:
12px
;
}
#restau_infos
.ui-block-b
.ui-btn-inner
{
padding
:
5px
;
}
#contact_buttons
a
{
color
:
rgb
(
63
,
41
,
39
);
}
.ui-icon-maps
{
background
:
rgb
(
63
,
41
,
39
)
url(images/maps.png)
no-repeat
;
}
.ui-icon-tel
{
background
:
rgb
(
63
,
41
,
39
)
url(images/phone.png)
no-repeat
;
}
/** add the stars to the drop down */
#note_utilisateur-menu
a
{
padding-left
:
100px
;
position
:
relative
;
}
#note_utilisateur-button
span
.ui-btn-text
{
background
:
url(images/pagination.png)
no-repeat
;
}
#note_utilisateur-button
span
.ui-btn-inner
{
padding-left
:
5px
;
}
#note_utilisateur-menu
li
a
:before
{
content
:
" "
;
display
:
inline
-
block
;
width
:
115px
;
height
:
20px
;
background
:
url(images/pagination.png)
no-repeat
;
position
:
absolute
;
left
:
0px
;
}
.one
#note_utilisateur-button
span
.ui-btn-text
,
#note_utilisateur-menu
li
a
:before
{
background-position
:
-75px
-182px
;
}
.two
#note_utilisateur-button
span
.ui-btn-text
,
#note_utilisateur-menu
li
+
li
a
:before
{
background-position
:
-52px
-182px
;
}
.three
#note_utilisateur-button
span
.ui-btn-text
,
#note_utilisateur-menu
li
+
li
+
li
a
:before
{
background-position
:
-27px
-182px
;
}
.four
#note_utilisateur-button
span
.ui-btn-text
,
#note_utilisateur-menu
li
+
li
+
li
+
li
a
:before
{
background-position
:
-2px
-182px
;
}
第一行只是基本的样式使屏幕画面更美观。值得注意的是.ui-icon-maps和.ui-icon-tel。记得我们给按钮添加一个特定的data-icon类,创建并使用这些类,我们可以方便的给按钮添加自定义图标,只需改变背景图案。
最 后部分的技巧是添加星形选择框。星型放在pagination.png图片里。但这里,我们不能使用上一页的宽度技巧。相反我们用一个固定宽度的伪类,靠 把背景位置左移来“隐藏”不要显示的星星。因为我们的选择项没有指定任何特别的类,不得不用+号选择器来定位每个li元素,从第一个到第四个。
最 后的关键是添加星级到列表选定项。不幸的是我们不能用纯css来完成,因此不得不在这里用一点JavaScript(实际是一些jQuery)代码。这段 脚本背后的主要想法是,当页面载入和选项改变时,获取选定项的类(记得我们在HTML代码里给他们赋了类),然后把这个类到应用到选择框,这样我们能动态 的改变星级。
如下是脚本代码
$
(
'#restau'
).
live
(
'pageinit'
,
function
(
event
){
var
SelectedOptionClass
=
$
(
'option:selected'
).
attr
(
'class'
);
$
(
'div.ui-select'
).
addClass
(
SelectedOptionClass
);
$
(
'#note_utilisateur'
).
live
(
'change'
,
function
(){
$
(
'div.ui-select'
).
removeClass
(
SelectedOptionClass
);
SelectedOptionClass
=
$
(
'option:selected'
).
attr
(
'class'
);
$
(
'div.ui-select'
).
addClass
(
SelectedOptionClass
);
});
$( ‘#restau’ ).live( ‘pageinit’,function(event){ 在jQuery Mobile相当于document.ready。我们分两种情况。一个是当页面载入,另一个是当触发选择改变,也就是当选择另一个评 级。脚本给#note_utilisateur-button添加星级的类,和上面css相同原理。
最后我们可做的一件事,给这个web应用加一个触控手段,为iOS设备添加图标。在iOS设备上,用户能为应用创建一个快捷方式到“桌面”。如下代码添加到html头部
<link
rel=
"apple-touch-icon"
href=
"images/launch_icon_57.png"
/>
<link
rel=
"apple-touch-icon"
sizes=
"72x72"
href=
"images/launch_icon_72.png"
/>
<link
rel=
"apple-touch-icon"
sizes=
"114x114"
href=
"images/launch_icon_114.png"
/>
你必须为不同设备和分辨率各提供一个57,72和114px宽度的图片。
今天我们看到如何创建一个漂亮的近似原生应用的HTML5 jQuery Mobile web应用。当然这只是前端部分;你还必须添加服务器端部分,来保存数据,生成每个城镇的页面等等。但这让你很好的了解jQuery Mobile是如何工作的,以及你可以用它做什么。
如果你想要看到更多jQuerey Mobile网站,可以看一下JqmGallery,一个用jQuery Mobile建立的web应用和网站的展示。
原文作者Stephanie Walter
我们已经完成了jQuery Mobile教程的应用构建部分,现在我们必须再用一点样式使应用更耀眼。
你可以在.zip文件中找到所有使用的样式文件。你允许以演示目的使用它们,但不能以商业目的使用。要样式化jQuery Mobile应用,有两个方案:删除jquery.mobile-1.0.1.css 文件然后重新写一个自己的,或者添加第三个css文件来替换某些jQuery Mobile样式。这里我们采取第二方案,因为jQuery Mobile基础设计大多符合本应用的要求。你也能使用jQuery Mobile Theme roller创建自定义主题而不必写太多的css。
这部分css改变了某些jQuery Mobile全局样式。
/*** general styling */
.ui-page.ui-body-c
{
background
:
url(images/bg.png)
;
box
-
shadow
:
0px
0px
30px
5px
rgba
(
107
,
105
,
105
,
0
.
3
)
inset
,
0px
0px
0px
1px
rgba
(
107
,
105
,
105
,
0
.
4
)
inset
;
}
.ui-icon.ui-icon-arrow-r
{
background-color
:
rgb
(
136
,
111
,
110
);
}
.ui-corner-all
,
.ui-corner-top
,
.ui-corner-bottom
,
.ui-corner-tl
,
.ui-corner-tr
,
.ui-corner-bl
,
.ui-header
.ui-btn-corner-all
,
.ui-listview-filter
.ui-btn-corner-all
,
#restau_infos
.ui-btn-corner-all
,
#contact_buttons
.ui-btn-corner-all
,
#notation
.ui-btn-corner-all
{
border
-
radius
:
0.2em
;
}
.ui-btn-active
{
background
:
#654644
;
/* Old browsers */
background
:
-
moz
-
linear
-
gradient
(
top
,
#654644
0
%,
#331c1b
100
%
);
/* FF3.6+ */
background
:
-
webkit
-
gradient
(
linear
,
left
top
,
left
bottom
,
color
-
stop
(
0
%,
#654644
)
,
color
-
stop
(
100
%,
#331c1b
));
/* Chrome,Safari4+ */
background
:
-
webkit
-
linear
-
gradient
(
top
,
#654644
0
%,
#331c1b
100
%
);
/* Chrome10+,Safari5.1+ */
background
:
-
o
-
linear
-
gradient
(
top
,
#654644
0
%,
#331c1b
100
%
);
/* Opera 11.10+ */
background
:
-
ms
-
linear
-
gradient
(
top
,
#654644
0
%,
#331c1b
100
%
);
/* IE10+ */
background
:
linear
-
gradient
(
top
,
#654644
0
%,
#331c1b
100
%
);
/* W3C */
color
:
#fff
!important
;
}
.ui-content
.choice_list
.ui-btn-active
.ui-link-inherit
,
.ui-btn-down-c
a
.ui-link-inherit
,
#home
.ui-btn-down-c
a
.ui-link-inherit
{
color
:
#fff
!important
;
}
img
{
max-width
:
100
%
;
height
:
auto
;
width
:
auto
;
-
webkit
-
box
-
sizing
:
border
-
box
;
-
moz
-
box
-
sizing
:
border
-
box
;
box
-
sizing
:
border
-
box
;
}
.ui-grid-a
.ui-block-a
,
.ui-grid-a
.ui-block-b
{
width
:
48
%
;
padding
:
1
%
;
}
第一行给应用背景添加纱化图片和box-shadow,这让整体设计有些深度。我们也改变了背景颜色。做过许多IOs应用,圆角有一点过度使用了(但这是 个人口味),因此本教程改变所有jQuery Mobile过重的0.6em圆角为更谨慎的0.2em半径的圆角。然后改变活动按钮的蓝色渐变为棕色。
最后部分是响应式图片技巧,使得他们很好的表现在各种浏览器上。
应用首页应该有一个特别的风格。首页必须给用户的一个好印象才愿意停留。现在我们需要用一个精致的logo作为应用的标识。如下是效果图
让我们看一下css
/*** home **/
#branding
{
background
:
url(images/logo.png)
no-repeat
;
width
:
322px
;
height
:
165px
;
text-indent
:-
999px
;
font-size
:
0px
;
margin
:-
10px
auto
0
auto
;
border-bottom
:
1px
solid
rgba
(
65
,
38
,
37
,
0
.
6
);
}
.choice_list
h1
{
margin-top
:
30px
;
font-size
:
18px
;
color
:
rgb
(
65
,
38
,
37
);
font-weight
:
normal
;
font-style
:
italic
;
padding
:
5px
0
6px
50px
;
background
:
url(images/pagination.png)
no-repeat
;
}
#home
.choice_list
h1
{
background-position
:
0
-16px
;
}
#home
.choice_list
h3
{
padding-top
:
10px
;
color
:
rgb
(
63
,
41
,
39
);
}
#home
.choice_list
.ui-btn-active
a
.ui-link-inherit
h3
{
color
:
#fff
;
}
.choice_list
img
{
padding
:
3px
;
}
正如你所见,我们用众所周知的技巧使标识的文本元素消失同时用logo取代。我们也用漂亮的图片加入h1问句的样式,然后加一些空白到列表元素他们将以图片居中。
如下是第二页效果:
下面是我们的css代码。
/* title bar */
.ui-header.ui-bar-a
{
background
:
url(images/header_bg.png)
;
}
.ui-header
.ui-title
{
text-indent
:-
9999px
;
font-size
:
0px
;
background
:
url(images/header_logo.png)
no-repeat
69
%
5px
;
height
:
33px
;
padding
:
5px
0
5px
50px
;
margin
:
0px
;
}
.ui-header
.ui-btn-up-a
{
background
:
rgba
(
255
,
255
,
255
,
0
.
1
);
box
-
shadow
:
none
;
}
.ui-header
.ui-btn-hover-a
{
background
:
rgba
(
0
,
0
,
0
,
0
.
3
);
box
-
shadow
:
none
;
}
我们再次使用文本替换技巧使标题文字消失然后放上标识图片。标题栏背景也变为棕色渐变,同样返回按钮也是如此。我们再添加图片到问句的样式。这里最后的#choisir_ville .ui-listview-filter是阻止过滤器的清除按钮下落而重置top padding。
这是页面效果
下面是css代码
/** choix du restaurant **/
#choisir_restau
.choice_list
h1
{
background-position
:
0
-132px
;
margin
:
10px
auto
20px
auto
;
}
#choisir_restau
.choice_list
a
{
padding-top
:
10px
;
color
:
rgb
(
63
,
41
,
39
);
}
#choisir_restau
.classement
{
display
:
inline
-
bloc
;
background
:
url(images/pagination.png)
no-repeat
0
-182px
;
height
:
22px
;
text-indent
:-
999px
;
font-size
:
0px
;
}
#choisir_restau
.one
{
width
:
30px
;
}
#choisir_restau
.two
{
width
:
55px
;
}
#choisir_restau
.three
{
width
:
75px
;
}
#choisir_restau
.four
{
width
:
99px
;
}
这里有趣的部分是星级显示的技巧。我们仅用一张包含四颗星的图片作为背景。奥义是改变这个元素的宽度,所以一,二还是三星的显示取决于类。我们也隐藏了文本。
最多的工作是在这个页面是
如下是css代码。
/** restau **/
#restau_infos
,
#contact_infos
{
color
:
rgb
(
63
,
41
,
39
);
font-size
:
14px
;
}
#restau_infos
h1
,
#contact_infos
h2
,
#notation
h2
{
color
:
rgb
(
63
,
41
,
39
);
font-size
:
18px
;
margin
:
0
auto
5px
auto
;
}
#restau_infos
p
,
#restau_infos
ul
,
#contact_infos
p
{
margin
:
2px
auto
5px
auto
;
}
#restau_infos
ul
{
padding
:
0
0
0
10px
;
}
#restau_infos
ul
li
{
list-style-type
:
square
;
margin-left
:
5px
;
}
#restau_infos
.ui-block-b
.ui-btn
{
font-size
:
12px
;
}
#restau_infos
.ui-block-b
.ui-btn-inner
{
padding
:
5px
;
}
#contact_buttons
a
{
color
:
rgb
(
63
,
41
,
39
);
}
.ui-icon-maps
{
background
:
rgb
(
63
,
41
,
39
)
url(images/maps.png)
no-repeat
;
}
.ui-icon-tel
{
background
:
rgb
(
63
,
41
,
39
)
url(images/phone.png)
no-repeat
;
}
/** add the stars to the drop down */
#note_utilisateur-menu
a
{
padding-left
:
100px
;
position
:
relative
;
}
#note_utilisateur-button
span
.ui-btn-text
{
background
:
url(images/pagination.png)
no-repeat
;
}
#note_utilisateur-button
span
.ui-btn-inner
{
padding-left
:
5px
;
}
#note_utilisateur-menu
li
a
:before
{
content
:
" "
;
display
:
inline
-
block
;
width
:
115px
;
height
:
20px
;
background
:
url(images/pagination.png)
no-repeat
;
position
:
absolute
;
left
:
0px
;
}
.one
#note_utilisateur-button
span
.ui-btn-text
,
#note_utilisateur-menu
li
a
:before
{
background-position
:
-75px
-182px
;
}
.two
#note_utilisateur-button
span
.ui-btn-text
,
#note_utilisateur-menu
li
+
li
a
:before
{
background-position
:
-52px
-182px
;
}
.three
#note_utilisateur-button
span
.ui-btn-text
,
#note_utilisateur-menu
li
+
li
+
li
a
:before
{
background-position
:
-27px
-182px
;
}
.four
#note_utilisateur-button
span
.ui-btn-text
,
#note_utilisateur-menu
li
+
li
+
li
+
li
a
:before
{
background-position
:
-2px
-182px
;
}
第一行只是基本的样式使屏幕画面更美观。值得注意的是.ui-icon-maps和.ui-icon-tel。记得我们给按钮添加一个特定的data-icon类,创建并使用这些类,我们可以方便的给按钮添加自定义图标,只需改变背景图案。
最 后部分的技巧是添加星形选择框。星型放在pagination.png图片里。但这里,我们不能使用上一页的宽度技巧。相反我们用一个固定宽度的伪类,靠 把背景位置左移来“隐藏”不要显示的星星。因为我们的选择项没有指定任何特别的类,不得不用+号选择器来定位每个li元素,从第一个到第四个。
最 后的关键是添加星级到列表选定项。不幸的是我们不能用纯css来完成,因此不得不在这里用一点JavaScript(实际是一些jQuery)代码。这段 脚本背后的主要想法是,当页面载入和选项改变时,获取选定项的类(记得我们在HTML代码里给他们赋了类),然后把这个类到应用到选择框,这样我们能动态 的改变星级。
如下是脚本代码
$
(
'#restau'
).
live
(
'pageinit'
,
function
(
event
){
var
SelectedOptionClass
=
$
(
'option:selected'
).
attr
(
'class'
);
$
(
'div.ui-select'
).
addClass
(
SelectedOptionClass
);
$
(
'#note_utilisateur'
).
live
(
'change'
,
function
(){
$
(
'div.ui-select'
).
removeClass
(
SelectedOptionClass
);
SelectedOptionClass
=
$
(
'option:selected'
).
attr
(
'class'
);
$
(
'div.ui-select'
).
addClass
(
SelectedOptionClass
);
});
$( ‘#restau’ ).live( ‘pageinit’,function(event){ 在jQuery Mobile相当于document.ready。我们分两种情况。一个是当页面载入,另一个是当触发选择改变,也就是当选择另一个评 级。脚本给#note_utilisateur-button添加星级的类,和上面css相同原理。
最后我们可做的一件事,给这个web应用加一个触控手段,为iOS设备添加图标。在iOS设备上,用户能为应用创建一个快捷方式到“桌面”。如下代码添加到html头部
<link
rel=
"apple-touch-icon"
href=
"images/launch_icon_57.png"
/>
<link
rel=
"apple-touch-icon"
sizes=
"72x72"
href=
"images/launch_icon_72.png"
/>
<link
rel=
"apple-touch-icon"
sizes=
"114x114"
href=
"images/launch_icon_114.png"
/>
你必须为不同设备和分辨率各提供一个57,72和114px宽度的图片。
今天我们看到如何创建一个漂亮的近似原生应用的HTML5 jQuery Mobile web应用。当然这只是前端部分;你还必须添加服务器端部分,来保存数据,生成每个城镇的页面等等。但这让你很好的了解jQuery Mobile是如何工作的,以及你可以用它做什么。
如果你想要看到更多jQuerey Mobile网站,可以看一下JqmGallery,一个用jQuery Mobile建立的web应用和网站的展示。