三种不同模式下的开发技术:传统的javascript模式、基于框架的不刷新模式、基于Ajax的Web2.0模式。
-
三种模式的比较:
3种刷新技术都比较快,如果数据量大,最慢的是“Iframe”,因为其属于完全的服务器端技术,会不断与服务器进行交互,从而影响Web也的整体响应能力。
速度最快的应该是“javascript脚本方法”,因为其采用全客户端技术,不需要在运行过程中与服务器交互,但其第一次加载时,则需要加载全部需要的数据。此方法还有一个缺点就是需要大量的javascript脚本,可能会使客户端变成胖客户端。
功能比较完善的应该是Ajax技术。其提供异步对象XMLHttpRequest,可以实现只加载部分数据,而且可以有条件的选择数据,这些条件可以通过XMLDOM实现,也可以使用正则表达式实现。
其实针对不同的应用程序,这三种方法的发挥效果是不同的,熟悉这些方法的应用步骤及原理,在合适的程序中调用合适的方法。
-
Ajax技术的应用范围:
并不是所有的网页数据交互都可以使用Ajax技术,也并不是只有具备了Ajax技术的网站,才能被成为Web2.0网站。一种技术只能在适当的时候使用,在不该使用的地方使用,也会浪费资源,并让网站的结构复杂化。Ajax的主要应用范畴如下:
1、局部刷新。当页面的某一个标签内容需要刷新时,为了不引起整个页面的回发,通常使用Ajax技术。
2、获取其他网页的内容。当本页的内容基于其他网页,通常使用Ajax+正则表达式的方法。
3、需要异步读取的地方。Google Maps是一个很好的例子。地图所占的资源比较大,当用户移动时,采用异步读取的方式,可以缩短用户等待时间。
4、最新的桌面应用模式。这种桌面应用模式可能算是Ajax扩大应用的一种方式。使用Ajax则可以将网络上的东西显示在桌面上,表面上与浏览器脱离了关系。
-
Ajax的缺点:
1、不被搜索引擎支持。这个缺陷在Ajax一推出就被争论,如果想推广自己的网站,很明显Ajax技术少用为妙。
2、不支持浏览器“后退”功能。这是个很严重的缺陷。使用Ajax技术更新的内容并不能复原。因为使用Ajax局部刷新之后,浏览器的地址栏的地址根本没有改变。
3、纯粹的javascript。javascript是一种客户端语言,虽然编写简单,但如果编写复杂,调试代码是一件很头疼的事情。
4、不支持智能终端设备。在现在的PDA和智能手机等软件程序中,都不支持Ajax技术。