欢迎来到.net学习网

欢迎联系站长一起更新本网站!QQ:879621940

您当前所在位置:首页 » Ajax教程 » 正文

最新评论

Ajax是什么,谁在使用Ajax

创建时间:2011年08月18日 23:32  阅读次数:(6085)
分享到:
Ajax是什么:
全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是一种创建交互式网页应用的网页开发技术。它使用:
  使用XHTML+CSS来表示信息(也可使用HTML);
  使用JavaScript操作DOM Document Object Model进行动态显示及交互;
  使用 XML 和 XSLT 进行数据交换及相关操作;
  使用 XMLHttpRequest对象与Web服务器进行异步数据交换;
  使用 JavaScript 将所有的东西绑定在一起。

Ajax不是一个技术,它实际上是几种技术,每种技术都有其独特这处,合在一起就成了一个功能强大的新技术。Ajax包括:
  XHTML和CSS
  Document Object Model
  XML和XSLT
  XMLHttpRequest
  JavaScript

传统的web应用模型工作起来就象这样:大部分界面上的用户动作触发一个连接到Web服务器的HTTP请求。服务器完成一些处理---接收数据,处理计算,再访问其它的数据库系统,最后返回一个HTML页面到客户端。这是一个老套的模式,自采用超文本作为web使用以来,一直都这样用。 

这种旧的途径让我们认识到了许多技术,但它不会产生很好的用户体验。当服务器正在处理自己的事情的时候,用户在做什么?没错,等待。每一个动作,用户都要等待。 
很明显,我们不愿意让用户总是等待。当界面加载后,为什么还要让用户每次再花一半的时间从服务取数据?实际上,为什么老是让用户看到程序去服务器取数据呢? 
通过在用户和服务器之间引入一个Ajax引擎,可以消除Web的开始-停止-开始-停止这样的交互过程. 它就像增加了一层机制到程序中,使它响应更灵敏,而它的确做到了这一点。 
不像加载一个页面一样,在会话的开始,浏览器加载了一个Ajax引擎--采用JavaScript编写并且通常在一个隐藏frame中。这个引擎负责绘制用户界面以及与服务器端通讯。Ajax引擎允许用异步的方式实现用户与程序的交互--不用等待服务器的通讯。所以用户再不不用打开一个空白窗口,看到等待光标不断的转,等待服务器完成后再响应。 

通常要产生一个HTTP请求的用户动作现在通过JavaScript调用Ajax引擎来代替.任何用户动作的响应不再要求直接传到服务器---例如简单的数据校验,内存中的数据编辑,甚至一些页面导航---引擎自己就可以处理它. 如果引擎需要从服务器取数据来响应用户动作---假设它提交需要处理的数据,载入另外的界面代码,或者接收新的数据---引擎让这些工作异步进行,通常使用XML, 不用再耽误用户界面的交互。

谁在使用Ajax:
在Ajax的应用和推广方面,Google当仁不让是表率,前面提到很多基于Ajax的应用都是由Google推出的。

微软也在积极开发更为完善的Ajax应用:它即将推出代号为Atlas的Ajax开发包。Atlas的功能将超越Ajax本身,包括整个Visual Studio的调试功能(客户端JavaScript教本的调试一直是困扰开发人员的难题)。另外,新的ASP.NET空间将客户端控件和服务器端代码的捆绑更为简便。Atlas客户端教本框架(Atlas Client Script Framework)也使网页及相关项目的交互更为便利。

微软近期宣布Atlas客户端教本框架将包括以下的内容(详细内容可以查看微软官方网站):
1,一个可扩展的核心框架,它添加了JavaScript功能,如生命同时期管理,继承管理,多点传送处理器和界面管理;
2,一个常见的功能的基本类库,由丰富的字符串处理,计时器和运行任务的功能;
3,为HTML附加动态行为的用户界面框架;
4,一组用来简化服务器连通和网络访问的网络堆栈;
5,一组丰富的用户界面开发控件,如自动完成的文本框,动画和拖放;
5,处理浏览器行为差异的浏览器兼容层面。

微软已经将Ajax技术应用在MSN Space网站上,其中提交恢复的功能就是利用Ajax实现的。目前,Ajax应用最普遍的领域使GIS-Map,GIS应用交互非常频繁,它强调快速响应,Ajax的特点正好可以满足这类需要。&
来源:
说明:所有来源为 .net学习网的文章均为原创,如有转载,请在转载处标注本页地址,谢谢!
【编辑:Wyf】

打赏

取消

感谢您的支持,我会做的更好!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

最新评论

共有评论0条
  • 暂无任何评论,请留下您对本文章的看法,共同参入讨论!
发表评论:
留言人:
内  容:
请输入问题 10+27=? 的结果(结果是:37)
结  果: