jquery mobile android浏览器,我们怎样使用jQuery Mobile实现手机新闻浏览器

大家是否还对这部分知识存在疑问呀,让我来为大家详细解答一下。

Mobile项目是jQuery项目下的在方面的又一力作.swift 教程在本文中,笔者将带你一步步更深入学习使用jQuery Mobile框架去实现一个能在手机上运行的新闻浏览器,这个新闻浏览器会读取Yahoo网站上以RSS方式提供的新闻。

f168df6a5d39c2fdde921b17b0cdf2aa.png

jQuery Mobile项目目前的最新版本是alpha 3版本,该项目的主要目的是为了能轻易地实现能在不同的移动操作系统上运行的应用程序,比如能在Android,和黑莓手机上运行。而本文的重点是介绍如何在Android上运行程序。本系列文章将以如下的结构进行教学:

首先,我们会向大家介绍jQuery Mobile中的基本的UI框架元素。为了达到这个目的,我们先会学习如何做一个Web应用,这个Web应用使用了和技术,向Yahoo的服务器发起请求,然后会把Yahoo的RSS返回的新闻列表,其实是XML格式的文件返回进行解析。其中我们会学习使用jquery-dotimeout-plugin这个插件去实现当不断有最新的新闻返回时,而呈现的过渡渐变效果。同时我们还会使用DST.js plugin这个插件,去保存用户选择的要阅读的新闻分类。这个Web应用程序包括了一个HTML文件,jQuery Mobile的库文件和jQuery插件,同时其中用到了php程序去发起请求并且将请求返回给html文件。最后我们提供了该应用程序在Android,iOS上的实际效果图,以说明jQuery Mobile产生的应用的效果在不同的系统上看起来都是一致的。

在教学系列的第2、3部分,将介绍如何将我们已经做好的web应用移植到Android上去。这里我们使用的是Android系统中的android.webkit.WebView对象容器去运行我们已经实现的HTML页面,这是一个十分方便的实现方法,同时,swift code这里的修改只是把之前用PHP实现的ajax实现的请求改为真实的Yahoo新闻的RSS地址即可,我们也会介绍如何去Android的一些按钮以及其中的技巧。

项目的页面结构介绍

我们先来看下项目的页面结构,先有个初步的认识。首先,呈现在用户的第一个页面,是列出了各个分类的最新的一条新闻,如下图:

0df0134cbbc5f7e963a1b9903a99f2b8.png

在上图中,使用了jQuery Mobile的split list控件,分成了左右两个区域。其中左边的是显示了用户选择的新闻分类,每个分类下面显示了最新的一条新闻,大概每隔2秒,就会以渐变过渡效果显示最新的另外一条新闻。而每个分类的右边有一个交叉的图标,当用户点这个图标时,就会把这个分类删除掉。此外,可以通过最上方的Add图标去增加一个分类。

当用户点了增加的按钮后,出现如下图:

ab46c090862c2fe672ef2a471bded4f3.png

在上图中,用户选择下拉列表中自己喜欢的新闻分类,然后点选“Get Category”按钮,这样就会将该新闻分类添加到用户喜爱的新闻分类中去。

而点每个分类的标题,则可以在另外一个页面中列出该分类下的所有最新新闻,如下图所示:

921d5cb8d1a7aa5476b723f6e3718a1c.png

而每条新闻都有相关的新闻图片,当点每张新闻图片时,会跳转到新闻的详细连接页面,如下图:

599f01abff33378f55a7d5991ca9c674.png

要注意的是,在我们的web应用和Android程序中,当打开了新闻详细页面后,如果用户要返回,则必须点后退按钮或者是手机上的后退按钮,将会返回到分类目录的首页中。

下面这个图清晰地列出了整个流程:

a29472c2d298bb884e49903c0a56cf92.png

注意在上图中,在页面的过渡之间,我们使用了一个小的等待的图标,这个在移动设备上是十分常见的技巧,因为移动设备资源有限不象平常的web应用一样,可能有的时候要让用户等待,这个时候用一个等待图标告诉用户现在的装载进度,是一个很好的用户体验。

介绍请求响应模型

在这个部分,实战视频我们先来实现第一部分即web应用程序,首先我们探讨下其程序架构。在web应用程序中,首先是一个html页面index.html,这个页面中将包含所有的页面布局,并且处理所有用户所触发的事件。而这个页面在稍后的移动应用程序部分,会被从服务器(这里我们使用 2.2)中下载到用户移动设备的浏览器中。而“Get Category”和“Choose Category”按钮,则会触发ajax请求Yahoo的新闻RSS连接http://rss.news.yahoo.com,

由于ajax安全域的限制,这里不能直接对Yahoo直接发起跨域的请求,所以为了模拟效果,我们在web服务器上使用了一个bridge.php的文件进行中转处理,这个文件直接使用http get去请求Yahoo的新闻,如下结构图:

5e994a6743995bd295d43221a9fab88a.png

而在本教程后半部分的介绍Android应用程序中,则不再需要bridge.php文件了,因为我们会把HTML页面运行在android.webkit.WebView控件中,不再受到跨域的限制了,这将在第三部分进行详细讨论。

jQuery Mobile页面结构

本节开始介绍如何使用jQuery Mobile去编写页面,注意使用jQuery Mobile编写的页面,在普通的象IE浏览器上也是可以运行的。在jQuery Mobile框架编写的页面中,通常有一个“父页面”,在这个页面中,可以包含多个子页面,其中它们之间通过锚点进行连接跳转。我们的index.html页面的初步结构如下:

ERPage">

.

其中,在这个div层中,使用了data-theme=“b”的属性,这个是jQuery Mobile预先为我们设置好的a,b,c,d,e5种风格属性,其中这里使用的b风格,使用的是偏蓝色的风格体系,其他的4种风格体系如下所示:

94572f323941ea3a5570ae2fba32db5f.png

而其他各个页面都包含在这个父页面的容器内。具体来说,一个内容页必须包括页头header,页面具体内容区域content,和页脚footer,用如下方式定义:

下面我们看下具体的目录分类页的结构和代码,如下图:

fd10cb841469ce42fe990546ae72906d.png

Categories

在上面的代码中,其中的data-nobackbn的值设置为true,shell 表明这里不需要设置一个返回的按钮。而我们在增加新闻分类的按钮中()设置了data-icon的样式为plus,即代表这个按钮中会有一个加号,而样式ui-btn-left是设置按钮在header的左边对齐,而在页脚部分我们则留空,在本文中不设置任何东西,而你当然可以设置一些象版权声明那样的文字。

我们再来学习中间部分id为contentCategories的层,在这个层中,我们使用了jQuery Mobile中的分隔listview样式,即部分,这是一个项目列表的形式呈现在用户面前,注意data-split-icon指定用了一个样式为删除按钮的图作为分隔,可以看到,每一行都被划分为两个部分,左边部分是显示当前的新闻分类和最新一条新闻,右边是删除按钮。

增加分类的页面

下面给出的是增加一个新闻分类的页面代码:

Select

Select a Category

Top Stories

U.S.

World

Politics

...

Get Category

在这个页中,有一个表单form1,其中还包含了一个下拉选择菜单,菜单中列出了Yahoo站的常见新闻分类,以供用户选择。

新闻页

我们来看新闻页的框架代码如下:

News

Back

data-role="button" data-inline="true">Back to News   Categories

在该代码段中,我们没有使用jQuery Mobile自带的回退按钮,而是自己实现了一个按钮(id为buttonHdrShowCategories),而其事件代码编写会在稍后的教程中讲解。属性data-icon=“arrow-l”则使用了jQuery内置的按钮(详细的按钮列表)。为了方便用户在移动设备中,当拖动到页面底部时,也能够有返回的功能,因此也在页面底部同样设置了返回按钮。

4fb4704de8eb5e8e9e346af938914cb3.png

5132319b4486ab772e2bfe6c925e8196.png

等待处理

前面提到过,在不同的页面之间切换时,或者在处理一些耗费时间久的操作上,一个给用户很好的操作体验是使用进度指示图(或者是进度条)等,所以这里也同样给出了一个等待的图标。

新闻内容页

关于新闻内容页的处理,将在本系列教程的第2部分给出说明。

如何显示这些页面

接下来,我们讨论下如何在一个单独的html页中,控制上述介绍的各个页面的显现和隐藏,方法是使用Script,代码如下:

可以看到,我们在Javascript中,用变量保存了各个层的id名称,如果要隐藏某个页面,只需要简单调用jQuery提供的方法hide()就可以了,比如,要隐藏目录页:

function hideCategories(){

hdrCategoriesVar.hide();

contentCategoriesVar.hide();

ftrCategoriesVar.hide();

}

同理,其余的各层,也是调用相同的代码进行隐藏,比如:

function hideSelect(){

hdrSelectVar.hide();

contentSelectVar.hide();

ftrSelectVar.hide();

}

...

function hideNews(){

hdrNewsVar.hide();

contentNewsVar.hide();

ftrNewsVar.hide();

}

...

function hideProgress(){

hdrProgressVar.hide();

contentProgressVar.hide();

ftrProgressVar.hide();

}

而为了显示某一层,只需要调用jQuery.show()方法即可,比如:

function showCategories(){

hideSelect();

hideProgress();

hideNews();

hdrCategoriesVar.show();

contentCategoriesVar.show();

ftrCategoriesVar.show();

}

当然,我们这个例子中实现的是在同一个页面中,使用多个不同的层的技术,然后在各层之间进行导航,jQuery Mobile也支持在不同的页面中实现导航,具体的请参考:jQuery的帮助文档.

小结

在本文中,我们简单介绍了我们这个项目的结构和页面流程,并且复习了一些jQuery Mobile的基本用法,把页面的基本结构都设计好了,在下一篇教程中,将详细介绍jQuery Mobile和其他相关插件如何配合一起,先实现一个web版本的新闻浏览器。

大家学到了多少?如果意犹未尽,可前往

b673ddd2ca1de3bdc61e74fbd20a3525.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
jquerymobile手机商城是一款基于jQuery Mobile开发的移动端商城应用。该应用以手机销售为主题,提供了一系列手机产品和相关配件的购买服务。 首先,jquerymobile手机商城通过简洁直观的界面设计,为用户提供了良好的浏览体验。用户可以通过该应用方便地浏览各类手机产品,如苹果、三星等品牌,以及不同型号和配置的手机。同时,该应用还提供了手机配件和耳机等附件的选购,满足用户的不同需求。 其次,jquerymobile手机商城为用户提供了方便快捷的购买渠道。用户可以将心仪的手机产品或配件加入购物车,随后选择支付方式并完成支付流程。该应用支持多种支付方式,如支付宝、微信支付等,方便用户进行支付操作。用户购买成功后,商城还会提供订单跟踪服务,让用户了解订单的配送进度。 同时,jquerymobile手机商城也注重用户之间的互动和交流。用户可以通过该应用的留言板功能,留下对商品的评价和建议,帮助其他用户更好地选择购买的手机产品和配件。商城还会定期发布手机资讯和促销活动,提供给用户参考和购买的依据。 综上所述,jquerymobile手机商城作为一款移动端商城应用,通过优质的界面设计、便捷的购买渠道和用户之间的互动来满足用户的购物需求。它为用户提供了一个方便快捷的购物平台,旨在为用户提供最好的购物体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值