JavaScript框架是什么?怎样才能叫做框架?
刚初学js时,总会听到关于框架的一些事情。等学完JQ后我才知道什么是框架。一下是转载的一篇文章,希望对还迷茫的童鞋们有点帮助。
什么是JavaScript框架?
JavaScript本身就是一种功能强大的语言,您不需要额外的框架就可创建富互联网应用程序(RIA)。然而使用JavaScript并不是件容易的事,主要是由于支持多个Web浏览器产生的复杂性。与HTML和CSS一样,不同的浏览器有不同的JavaScript实现。让JavaScript代码实现跨浏览器兼容简直是个噩梦。
JavaScript框架或库是一组能轻松生成跨浏览器兼容的JavaScript代码的工具和函数。每一个库都在众多流行的Web浏览器的现代版本上进行了可靠的测试,因此,您可以放心地使用这些框架,您的基于JavaScript的RIA将会在不同浏览器和平台上以类似的方式工作。
除了解决跨浏览器问题,使用JavaScript框架可以更容易地编写检索、遍历、操作DOM元素的代码。它们不仅提供获取DOM元素引用的快捷函数,而且还允许DOM遍历函数以菊花链(daisy-chaining)方式查找任意深度的父元素、子元素、兄弟元素。最后,框架还提供一系列函数来更轻松地操作这些对象,可以改变、添加或删除内容本身;或者使用CSS样式类来改变元素的外观。
框架的另一重要特性是其改进的事件处理支持。由于不同浏览器的实现方式各不相同,跨浏览器事件处理将会非常艰难。因此JavaScript框架通常封装浏览器事件,并提供一组有用的跨浏览器兼容的函数来进行处理。有些框架还会提供一组标准键盘代码来表示基于键盘的事件(如按下Escape键、Return键、光标键,等等)。
所有这些特性都非常有用,但JavaScript框架有一个特性对于它最近的流行非常重要—支持Ajax。与JavaScript的其他许多方面一样,每个Web浏览器往往以不同方式支持Ajax,这使得以一种在所有Web浏览器中都受支持的方式处理Ajax变得十分复杂。几乎所有JavaScript框架都包含某种形式的Ajax库支持,通常提供Ajax请求和响应对象,以及用于评价响应、更新DOM元素、查询特定请求的帮助函数(helper)。
JavaScript框架的典型特性
现在,让我们看一看大多数JavaScript框架都具备的有用特性。包括:
1.选择器(Selector)
2.DOM遍历
3.DOM操作
4.实用(Utility)函数
5.事件处理Ajax
在解释每个特性时,我将会用以下的一个或几个JavaScript框架举例说明:Prototype、jQuery、YUI、ExtJS和MooTools。尽管每个框架的实现和语法都各不相同,但概念都是相同的。每个框架都有一个详细的API参考,可帮助您理解如何使用该特定库中的特性。