Ajax应用方面的一些补充
Ajax理念的出现,揭开了无刷新更新页面时代的序幕,并有代替传统web开发中采用form(表单)递交方式更新web页面的趋势,可以算是一个里程碑。但Ajax都不是适用于所有地方的,它的适用范围是由它的特性所决定的。通过我这几天对Ajax学习后的了解觉得它的特性主要有2点:
1、按需取数据。页面不读取无用的冗余数据,而是在用户操作过程中的某项交互需要某部分数据时才会向服务器发送请求。
2、无刷新更新页面。客户端利用XMLHTTP发送请求得到服务端应答数据,在不重新载入整个页面的情况下用JavaScript操作DOM最终更新页面。
3、预读功能也可以通过Ajax实现,但并不是Ajax的优势所在,它的主要优势还是在交互方面。
Ajax带来的正面效果:
1、减轻服务器的负担。因为Ajax的根本理念是“按需取数据”,所以最大可能在减少了冗余请求和响影对服务器造成的负担。
2、减少用户实际和心理等待时间。
首先,“按需取数据”的模式减少了数据的实际读取量,打个很形象的比方,如果说重载的方式是从一个终点回到原点再到另一个终点的话,那么Ajax就是以一个终点为基点到达另一个终点;
其次,即使要读取比较大的数据,也不用像RELOAD一样出现白屏的情况,由于Ajax是用XMLHTTP发送请求得到服务端应答数据,在不重新载入整个页面的情况下用Javascript操作DOM最终更新页面的,所以在读取数据的过程中,用户所面对的也不是白屏,而是原来的页面状态(或者可以加一个LOADING的提示框让用户了解数据读取的状态),只有当接收到全部数据后才更新相应部分的内容,而这种更新也是瞬间的,用户几乎感觉不到。总之用户是很敏感的,他们能感觉到你对他们的体贴,虽然不太可能立竿见影的效果,但会在用户的心中一点一滴的积累他们对网站的依赖。
举个应用的例子,庆祥提的一个建议很适合Ajax,是关于级联菜单方面的Ajax应用。
我们以前的对级联菜单的处理是这样的:
为了避免每次对菜单的操作引起的重载页面,不采用每次调用后台的方式,而是一次性将级联菜单的所有数据全部读取出来并写入数组,然后根据用户的操作用JavaScript来控制它的子集项目的呈现,这样虽然解决了操作响应速度、不重载页面以及避免向服务器频繁发送请求的问题,但是如果用户不对菜单进行操作或只对菜单中的一部分进行操作的话,那读取的数据中的一部分就会成为冗余数据而浪费用户的资源,特别是在菜单结构复杂、数据量大的情况下(菜单有很多级、每一级菜又有上百个项目,比如庆祥正在UE之中的读书频道),这种弊端就更为突出。
如果在此案中应用Ajax后,结果就会有所改观:
在初始化页面时我们只读出它的第一级的所有数据并显示,在用户操作一级菜单其中一项时,会通过Ajax向后台请求当前一级项目所属的二级子菜单的所有数据,如果再继续请求已经呈现的二级菜单中的一项时,再向后面请求所操作二级菜单项对应的所有三级菜单的所有数据,以此类推……这样,用什么就取什么、用多少就取多少,就不会有数据的冗余和浪费,减少了数据下载总量,而且更新页面时不用重载全部内容,只更新需要更新的那部分即可,相对于后台处理并重载的方式缩短了用户等待时间,也把对资源的浪费降到最低。
- · 使用XSL将XML文档中的CDATA注释输出为HTML文本
- · 读写xml文件的2个小函数
- · XSL学习心得 - 制作图像超链接
- · XSL学习心得 - 调用属性值
- · XML在Web中的简单应用
- · XML将走向何方
- · 概述IE和SQL2k开发一个XML聊天程序
- · XML CDATA的作用
- · 如何在HTML中引用XML数据
- · W3C有意推广XML新标准 为兼容性吵翻了天
- · HTML如何向XML迁移
- · 在模板中指定XSL样式表
- · 建立MS XML 测试环境
- · 利用ASP从远程服务器上接收XML数据
- · 使用模板执行SQL查询
- · 用XML在页面内刷新数据
- · 编写结构完整的XML文档
- · Java、XML、C#激情碰撞
- · Visual Studio.net中的XML注释
- · 具体实现XML的三种方式
- · 对xml操作的主要方法
- · ASP.NET创建Web Services之概述
- · JSP取得在WEB.XML中定义的参数
- · XML配置文件的读取处理
- · 也谈JSP与XML的交互
- · IBM等组建XML标准化团体
- · 了解WEB页面工具语言XML(六)展望
- · 了解WEB页面工具语言XML(五)好处
- · 了解WEB页面工具语言XML(四)应用分类
- · 了解WEB页面工具语言XML(三)支持工具
- · 了解WEB页面工具语言XML(二)定义
- · 了解WEB页面工具语言XML(一)产生背景
- · 使用PHP DOM-XML创建和解析XML文件
- · SQL Server和XML的集成
- · 使用XML的五种场合
- · XML的十个基本特点
- · XML轻松学习手册(7)XML相关资源
- · 技巧:开发本地化的XML格式
