快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

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向后台哀求当前一级项目所属的二级子菜单的所有数据,假如再继承哀求已经呈现的二级菜单中的一项时,再向后面哀求所操作二级菜单项对应的所有三级菜单的所有数据,以此类推……这样,用什么就取什么、用多少就取多少,就不会有数据的冗余和浪费,减少了数据下载总量,而且更新页面时不用重载全部内容,只更新需要更新的那部分即可,相对于后台处理并重载的方法缩短了用户等待时间,也把对资源的浪费降到最低。


返回类别: 教程
上一教程: 利用XMLHTTP无刷新自动实时更新数据
下一教程: XML文档搜索使用小结

您可以阅读与"Ajax应用方面的一些补充"相关的教程:
· Ajax的一些个人理解
· XML编程方面的扩展
· 一个页面的最大连接数量
· 存储.NET应用程序到定制的XML .config文件中
· 用XSL翻译Web服务应用程序
    微笑服务 优质保证 索取样品