AJAX——新手快车道(一)

阅读更多

AJAX我也行

 

1.0 缘起

 

我是一个勤奋的Blogger,坚持不懈的写Blog,让我有了很多的收获。比如天南地北的朋友,比如千奇百怪的朋友,比如志同道合的朋友。不时会有朋友加我的MSN,也不时会有一些有趣的对话、甚至诡异的对话。

但是,最为诡异的对话,是发生在200511月的某一天。一个叫Yeka的朋友在MSN上跟我hi了一下。

Yekahi,你好,我是博文视点的。

我:你好,什么事呀

Yeka:想请你写一本书,看看你有没有兴趣。

我:

Yeka:有朋友向我们推荐你的,我们也觉得你的文笔不错。

我:是什么书呀?(内心颇有些得意啊

Yeka:一本关于AJAX的新手入门的书。

我:(我的朋友,难道这个推荐我的朋友,不知道我不懂AJAX的吗?八成是要害我吧!)

我:是谁呀。

Yeka:熊节,还有孟岩。

我:……(无语中……照理说,他们应该了解我的呀,怎么会推荐我来写书呢?而且还是AJAX的书。)

 

可悲啊,我其实是一个意志不坚定的同志,经不起Yeka、孟岩他们几个的撺掇,我也就跃跃欲试了。内心里想着,AJAX嘛,新出来的技术,能有多难,写一本新手入门嘛,也不用写得太深的。

 

现在拿在你手里的这本书,就是我的处女作了——应该叫我们,就像你在封面上看到的那样,有三个人,这个故事有点复杂——这是一本关于AJAX的书,也是一本关于我如何写出《AJAX——新手快车道》这样一本书的书。对于我来说,这既是一次极限的写作经历,也是一次极限的学习经历。

 

其中的刺激,让我们一起来领略吧,Let’s GO


1.1 AJAX是什么呀?

 

要写一本AJAX的书,想想都觉得有点心虚。AJAX到底是什么呀?我得先Google一把。于是我就发现了促使AJAX诞生的那篇文章《a New Approach to Web Applications》,在这篇文章里,AJAX是一个比较莫名的缩写单词:Asynchronous JavaScript + XML。什么叫做异步的JavaScript加上XML呀。在初步的浏览之后,我相信,AJAX这个名字之所以能够如此风行,完全是因为那只世界闻名的荷兰球队。Jesse James Garrett的贡献的伟大之处就在于,他想方设法的搞出了这么一个缩写,使得一些大家早就在使用的老技术,变得重新流行起来,热门起来,新鲜起来。

 

Garrett的总结中,AJAX包含以下五个部分:

Ø        基于标准的表示技术,使用XHTMLCSS

Ø        动态显示和交互技术,使用Document Object Model(文档对象模型)

Ø        数据互换和操作技术,使用XMLXSLT

Ø        异步数据获取技术,使用XMLHttpRequest

Ø        JavaScript将以上的一切都结合在一起

 

而借助于这样的技术组合,我们可以开发出用户使用体验更加好的Web应用。

那么,这么好的技术,究竟有哪些东西呢?这些技术和传统的WEB开发技术,有多少区别呢?

右边的这两张图,就是那两张著名的AJAX介绍的图了。在Garrett的文章中,用这两张图,非常直观的表达了新老两种技术之前的区别。

 

第一张图尤其说明了传统Web应用程序的结构与采用了AJAX技术的Web应用程序的结构上的差别。

主要的差别,其实不是JavaScript,不是HTML/XHTMLCSS,而是采用了XMLHttpRequest来向服务器异步的请求XML数据。至于其它的技术,大家都是可以用的。

再来看第二张图,传统的Web应用模式,用户的体验是割裂的,点击->等待->看到新的页面->再点击->再等待。而采用了AJAX技术之后,大部分的计算工作,都是在用户不察觉的情况下,交由服务器去完成了,没有空白的屏幕,没有让人心烦的旋转地球,没有虚假的下载百分比进度条。用户可以不必在黑夜与白天之间穿行,只需要的安心的坐在显示器前,欢乐不间断,享受不打折。

 

真好!也真是简单,说到底,一切的秘密不就是个XMLHttpRequest吗?早知道我就不该用AJAX这个关键词,现在Google都有1300多万条AJAX相关的页面了。我还是直接用XMLHttpRequest这个关键词来查吧。赶紧进入Coding,才是正道啊!

你可能感兴趣的:(Ajax,JavaScript,Web,应用服务器,CSS)