AJAX——新手快车道(一)
一 AJAX我也行<span style="font-size: 15pt;" />1.0 缘起<span style="font-size: 14pt;" />
我是一个勤奋的Blogger,坚持不懈的写Blog,让我有了很多的收获。比如天南地北的朋友,比如千奇百怪的朋友,比如志同道合的朋友。不时会有朋友加我的MSN,也不时会有一些有趣的对话、甚至诡异的对话。<span style="font-size: 12pt;" />
但是,最为诡异的对话,是发生在2005年11月的某一天。一个叫Yeka的朋友在MSN上跟我hi了一下。<span style="font-size: 12pt;" />
Yeka:hi,你好,我是博文视点的。<span style="font-size: 12pt;" />
我:你好,什么事呀<span style="font-size: 12pt;" />
Yeka:想请你写一本书,看看你有没有兴趣。<span style="font-size: 12pt;" />
我: http://spaces.msn.com/rte/emoticons/smile_omg.gif
Yeka:有朋友向我们推荐你的,我们也觉得你的文笔不错。<span style="font-size: 12pt;" />
我:是什么书呀?(内心颇有些得意啊http://spaces.msn.com/rte/emoticons/smile_shades.gif)<span style="font-size: 12pt;" />
Yeka:一本关于AJAX的新手入门的书。<span style="font-size: 12pt;" />
我:http://static.flickr.com/49/107585312_d0d19a8461_o.pnghttp://static.flickr.com/49/107585312_d0d19a8461_o.pnghttp://static.flickr.com/49/107585312_d0d19a8461_o.png(我的朋友,难道这个推荐我的朋友,不知道我不懂AJAX的吗?八成是要害我吧!)<span style="font-size: 12pt;" />
我:是谁呀。<span style="font-size: 12pt;" />
Yeka:熊节,还有孟岩。<span style="font-size: 12pt;" />
我:……(无语中……照理说,他们应该了解我的呀,怎么会推荐我来写书呢?而且还是AJAX的书。)<span style="font-size: 12pt;" />
可悲啊,我其实是一个意志不坚定的同志,经不起Yeka、孟岩他们几个的撺掇,我也就跃跃欲试了。内心里想着,AJAX嘛,新出来的技术,能有多难,写一本新手入门嘛,也不用写得太深的。<span style="font-size: 12pt;" />
现在拿在你手里的这本书,就是我的处女作了——应该叫我们,就像你在封面上看到的那样,有三个人,这个故事有点复杂——这是一本关于AJAX的书,也是一本关于我如何写出《AJAX——新手快车道》这样一本书的书。对于我来说,这既是一次极限的写作经历,也是一次极限的学习经历。<span style="font-size: 12pt;" />
其中的刺激,让我们一起来领略吧,Let’s GO!<span style="font-size: 12pt;" />
1.1 AJAX是什么呀?<span style="font-size: 14pt;" />
要写一本AJAX的书,想想都觉得有点心虚。AJAX到底是什么呀?我得先Google一把。于是我就发现了促使AJAX诞生的那篇文章《a New Approach to Web Applications》,在这篇文章里,AJAX是一个比较莫名的缩写单词:Asynchronous JavaScript + XML。什么叫做异步的JavaScript加上XML呀。在初步的浏览之后,我相信,AJAX这个名字之所以能够如此风行,完全是因为那只世界闻名的荷兰球队。Jesse James Garrett的贡献的伟大之处就在于,他想方设法的搞出了这么一个缩写,使得一些大家早就在使用的老技术,变得重新流行起来,热门起来,新鲜起来。<span style="font-size: 12pt;" />
在Garrett的总结中,AJAX包含以下五个部分:<span style="font-size: 12pt;" />
Ø 基于标准的表示技术,使用XHTML与CSS
Ø 动态显示和交互技术,使用Document Object Model(文档对象模型)
Ø 数据互换和操作技术,使用XML与XSLT
Ø 异步数据获取技术,使用XMLHttpRequest
Ø 而JavaScript将以上的一切都结合在一起<span style="font-size: 12pt;" />
而借助于这样的技术组合,我们可以开发出用户使用体验更加好的Web应用。<span style="font-size: 12pt;" />
那么,这么好的技术,究竟有哪些东西呢?这些技术和传统的WEB开发技术,有多少区别呢?<span style="font-size: 12pt;" />
右边的这两张图,就是那两张著名的AJAX介绍的图了。在Garrett的文章中,用这两张图,非常直观的表达了新老两种技术之前的区别。<span style="font-size: 12pt;" />
第一张图尤其说明了传统Web应用程序的结构与采用了AJAX技术的Web应用程序的结构上的差别。<span style="font-size: 12pt;" />
主要的差别,其实不是JavaScript,不是HTML/XHTML和CSS,而是采用了XMLHttpRequest来向服务器异步的请求XML数据。至于其它的技术,大家都是可以用的。
http://www.adaptivepath.com/images/publications/essays/ajax-fig1_small.png
页:
[1]