2024年5月7日发(作者:)

第一章 认识一下jQuery

随着JavaScript的兴起,一系列JavaScript库也蓬勃发展起来。从早期的Prototype、Dojo

到2006年的jQuery,再到2007年ExtJs。可以发现,互联网正在掀起一场JavaScript风暴。

在这场风暴中,jQuery以其独特优雅的姿态,始终处于这场风暴的中心,受到越来越多的人

的追捧。

1.1 jQuery简介

jQuery是继Prototype之后又一个优秀的JavaScript库,它由 John Resig 创建于2006

年1月。它简化了遍历HTML文档、操作DOM、处理事件、执行动画和Ajax的操作。它

独特而又优雅的代码风格改变了JavaScript程序员编写程序的设计方式和思路。

不管你是网页设计师、后台开发者、业余爱好者还是项目管理者,也不管你是JavaScript

初学者还是JavaScript高手,你都有很多理由去学习jQuery,因为它是面向任何人的。

1.2 加入jQuery

1.2.1 JavaScript简介

JavaScript是为了适应动态网页制作的需要而诞生的一种编程语言。它是由 Netscape公

司开发的一种脚本语言(scripting language)。JavaScript的出现使得网页和用户之间实现了

一种实时性的、动态的、交互性的关系,使网页包含更多活跃的元素和更加精彩的内容。然

而,几乎每个 Web 开发人员都曾有过诅咒 JavaScript 的经历。这个备受争议的语言受累

于其复杂的称为文档对象模型 (DOM)的编程模型、糟糕的实现和调试工具以及不一致的浏

览器实现。直到现在,很多开发人员还认为JavaScript是一门令人厌恶的语言。

随着WEB2.0的兴起,作为广泛应用于 Web 开发的脚本语言,JavaScript开始日益重

要起来,JavaScript的复苏使一些业界领袖人物也不得不开始重新审视这种编程语言。诸如

Ajax (Asynchronous JavaScript + XML) 这样的编程技术让 Web 网页更加迷人,而完整的

Web 开发框架,比如 Apache Cocoon(一种使用而且充分利用了XML强大功能的发布框

架),则让 JavaScript 的应用越来越多,使其不止限于是一种用于制作 Web 页面的简单

脚本。

1.2.2 JavaScript库作用及对比

JavaScript库能帮助你轻松建立有高难度互动的web2.0特性的富客户端页面,它带有很

多预定义的对象和实用函数。下面是目前几种流行的JavaScript库的介绍和对比:

Prototype (

/)

图1-1

这个算是最早成型的JavaScript库之一,它对JavaScript的内置对象(如String对象、

Array对象等)做了大量的扩展。现在很多项目中都使用它,但这很大程度上是由于以前项

目用了,现在不得不继续沿用。这个库可以看做是把很多好的有用的JavaScript的方法组合

在一起的一个JS库,你甚至可以在你需要的时候随时将其中的几段代码抽出来放进自己的

脚本里。但也正是由于它成型年代早,在整体对于面向对象的编程思想把握上并不是很到位,

导致了结构的松散。

Dojo (

/)

图1-2

Dojo强大之处在于它提供了很多其他JavaScript库所没有提供的功能。比如离线存储的

API、生成图标的组件、基于SVG/VML的适量图形库、Comet支持等等很多优点。是非常

适合企业级应用的一款JavaScript库。同时它也得到了一些大公司的支持,如IBM、SUN、

BEA等。同时它的缺点也是很显著的:学习曲线陡,文档不齐全,最要命的就是API不稳

定,每次升级都可能导致已有的程序失效。但从它的1.0版以后看起来,情况有所好转。未

来是个很有潜力的库。

YUI (

/yui/)

图1-3

这套库是Yahoo打造出来的JavaScript库。全名是The Yahoo! User Interface Library 。

它提供了一些比较丰富的关于DOM操作、Ajax应用等一系列的封装。同时它还包括了几个

核心的CSS等。是一套比较齐全完备的富交互网页程序工具集。本身的文档极其完备,以

至于很少看到第三方写相应的文章。本身的代码编写也非常的规范,扩展性也很不错的一套

库。

ExtJS (

/)

图1-4

ExtJS,也常简称Ext。原本是对YUI的一个扩展,主要是用于创建前端用户界面,它

提供了极其丰富的组件。如今已经发展到可以利用包括jQuery在内的多种JavaScript框架作

为基础库,而Ext作为界面的扩展库来使用。但由于侧重于界面,所以本身比较臃肿,不压

缩的话文件上兆(MB),所以使用之前请先考虑。请注意,Ext并非完全免费的,如果用于商