Ajax为创建更加强壮的客户端Web应用奠定了基础,通过这种技术将大大改善用户的网页浏览体验。Ajax不是一种全新的技术,而是对已有的Web技术进行重新包装和利用,使它们发挥更大的效益。具体说:
l 使用XHTML和CSS构建基于Web标准的网页。
l 使用DOM(Document Object Model,文档对象模型)进行动态显示和交互。
l 使用XML和XSLT进行数据交换及相关操作。
l 使用XMLHttpRequest组件实现异步数据查询和检索(客户端与服务器端数据通信)。
l 使用JavaScript脚本将所有的技术绑定在一起实现动态控制。
在传统的Web应用开发中,客户端与服务器端主要通过表单来实现信息传递(也可以通过超链接来传递信息)。用户填写并提交表单之后,向服务器发送一个请求。服务器接收并处理传递的表单,然后返回一个新的网页进行响应。这种响应方式浪费了大量的带宽,因为在前后两个页面中大部分HTML代码往往是相同的。由于每次应用的交互都需要向服务器发送请求,应用的响应时间就依赖于服务器的响应时间。这导致了用户界面的响应比本地应用慢得多。
Ajax技术可以使客户端仅向服务器端发送并取回必需的数据,这样在服务器和浏览器之间交换的数据大量减少,结果我们就能看到响应更快的应用。同时很多的处理工作可以在发出请求的客户端机器上完成,所以Web服务器的处理时间也减少了。Ajax技术的优势就在于:
l 通过异步模式,提升了用户体验,减少了漫长的等待,可以快速、直接的反馈每一步操作的结果。
l 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用
l Ajax代码主要在客户端运行,从而减少了服务器的运行负载,为开发胖客户端应用(也称富客户端应用)奠定了基础。
所谓胖客户端就是在浏览器中的网页中借助Ajax技术模拟传统桌面应用程序的智能界面,来开发更加丰富、更富体验的Web应用程序。
从CS3版本开始,Dreamweaver开始增加对Ajax技术的支持。它主要通过Spry技术框架来实现的(如图1-15所示是Dreamweaver CS3提供的全部Spry构件)。其实从2005年开始,互联网上就雨后春笋般地冒出很多Ajax技术框架、Ajax技术库或组件等,它们都是以Ajax技术为核心,并对Ajax技术进行功能打包,以方便用户的使用(在后面的实例中我们还会进行讲解)。
图 1-15
Dreamweaver所开发的Spry技术框架可以单独使用,你可以在Adobe公司网站下载Spry API,然后在具体网页中引用即可。但是利用Dreamweaver所提供的可视化操作界面能够快速设计、开发和部署动态用户界面。在减少页面刷新的同时,增加交互性、提高访问速度和增强网页的可用性。
在Spry技术框架中,其核心是Spry数据集(如记录集一样),使用XML从RSS服务或数据库中将数据集成到网页中。集成的数据还可以很容易实现排序和过滤。
另外,Spry还提供了一组窗口构建。使用这些构建,你能够轻松地将常见界面组件(如列表、表格、选项卡、表单验证和可重复区域)添加到网页中。有关Dreamweaver的Spry技术应用话题,我们将会在后面各章中详细进行介绍。
Ajax在动态网站中扮演着两个重要角色:
第一,是改善客户端用户的体验。或者说增强网页的交互性。这与传统的网页特效在功能上有点类似,但是它更倾向于网页实用性设计上,而不是追求网页显示效果的花哨和好看。也就是现在比较提倡的网页易用性设计。通过Javascript、DOM和CSS来控制网页以符合用户需要的方式进行显示。
第二,是改善客户端与服务器端数据通信方式,避免网页必须通过刷新来进行数据更新。刷新网页实现数据通信的弊端显而易见。传输大量无用的数据,增加带宽负担;服务器需要进行大量数据处理,增加服务器运行负担;用户需要整个网页下载完毕之后才能浏览页面,耽误了用户的时间,刷新网页后页面需要重新加载,前面的用户操作可能需要重新再来,也增加了用户交互的难度。
现在使用Ajax技术来实现客户端和服务器端通信,你可以设计出更多富有交互性的动态页面效果,为设计富客户端的Web应用奠定了基础。
如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛