JavaScript框架是什么?怎样才能叫做框架?


Posted in Javascript onJuly 01, 2015

刚初学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 参考,可帮助您理解如何使用该特定库中的特性。

Javascript 相关文章推荐
25个好玩的JavaScript小游戏分享
Apr 22 Javascript
JS网页图片按比例自适应缩放实现方法
Jan 15 Javascript
JS实现超简单的鼠标拖动效果
Nov 02 Javascript
浅谈angularjs $http提交数据探索
Jan 20 Javascript
vue 使用eventBus实现同级组件的通讯
Mar 02 Javascript
vuex 项目结构目录及一些简单配置介绍
Apr 08 Javascript
angular ng-model 无法获取值的处理方法
Oct 02 Javascript
JavaScript制作3D旋转相册
Aug 02 Javascript
javascript浅层克隆、深度克隆对比及实例解析
Feb 09 Javascript
jquery实现简单自动轮播图效果
Jul 29 jQuery
在nuxt中使用路由重定向的实例
Nov 06 Javascript
JavaScript实现点击切换验证码及校验
Jan 10 Javascript
javascript常用的方法分享
Jul 01 #Javascript
JavaScript数组去重的3种方法和代码实例
Jul 01 #Javascript
JavaScript检测字符串中是否含有html标签实现方法
Jul 01 #Javascript
JS实现简单的图书馆享元模式实例
Jun 30 #Javascript
JS建造者模式基本用法实例分析
Jun 30 #Javascript
JS模式之简单的订阅者和发布者模式完整实例
Jun 30 #Javascript
JS模式之单例模式基本用法
Jun 30 #Javascript
You might like
php绝对路径与相对路径之间关系的的分析
2010/03/03 PHP
php 上传功能实例代码
2010/04/13 PHP
php的urlencode()URL编码函数浅析
2011/08/09 PHP
Yii中创建自己的Widget实例
2016/01/05 PHP
PHP中key和current,next的联合运用实例分析
2016/03/29 PHP
解决form中action属性后面?传递参数 获取不到的问题
2017/07/21 PHP
php转换上传word文件为PDF的方法【基于COM组件】
2019/06/10 PHP
Laravel框架Auth用户认证操作实例分析
2019/09/29 PHP
PHP实现一个按钮点击上传多个图片操作示例
2020/01/23 PHP
jQuery实现下拉框左右选择的简单实例
2014/02/22 Javascript
JavaScript搜索字符串并将搜索结果返回到字符串的方法
2015/04/06 Javascript
javascript HTML+CSS实现经典橙色导航菜单
2016/02/16 Javascript
jQuery的Each比JS原生for循环性能慢很多的原因
2016/07/05 Javascript
AngularJs验证重复密码的方法(两种)
2016/11/25 Javascript
js实现方块上下左右移动效果
2017/08/17 Javascript
js链表操作(实例讲解)
2017/08/29 Javascript
JS数组实现分类统计实例代码
2018/09/30 Javascript
JS使用Prim算法和Kruskal算法实现最小生成树
2019/01/17 Javascript
vue使用axios上传文件(FormData)的方法
2019/04/14 Javascript
vue实现移动端项目多行文本溢出省略
2020/07/29 Javascript
详细解析Python中的变量的数据类型
2015/05/13 Python
python清除指定目录内所有文件中script的方法
2015/06/30 Python
pandas dataframe添加表格框线输出的方法
2019/02/08 Python
django-rest-framework解析请求参数过程详解
2019/07/18 Python
TensorFlow使用Graph的基本操作的实现
2020/04/22 Python
python通过函数名调用函数的几种场景
2020/09/23 Python
python基于openpyxl生成excel文件
2020/12/23 Python
基于DOM+CSS3实现OrgChart组织结构图插件
2016/03/02 HTML / CSS
C#如何调用Windows程序打开一个文档
2014/12/26 面试题
奶茶专卖店创业计划书
2014/01/18 职场文书
门前三包责任书
2014/04/15 职场文书
2014年作风建设工作总结
2014/10/29 职场文书
2016年党员创先争优公开承诺书
2016/03/25 职场文书
500字作文之难忘的同学
2019/12/20 职场文书
java设计模式--原型模式详解
2021/07/21 Java/Android
Nginx配置文件详解以及优化建议指南
2021/09/15 Servers