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 相关文章推荐
javascript 图片上传预览-兼容标准
Jun 01 Javascript
用apply让javascript函数仅执行一次的代码
Jun 27 Javascript
Js基础学习资料
Nov 23 Javascript
js Html结构转字符串形式显示代码
Nov 15 Javascript
jQuery带进度条全屏图片轮播特效代码分享
Jun 28 Javascript
基于jquery实现百度新闻导航菜单滑动动画
Mar 15 Javascript
jQuery使用中可能被XSS攻击的一些危险环节提醒
May 24 Javascript
详解微信小程序input标签正则初体验
Aug 18 Javascript
element-ui 本地化使用教程详解
Oct 28 Javascript
Vue.js页面中有多个input搜索框如何实现防抖操作
Nov 04 Javascript
详解Vue中的MVVM原理和实现方法
Jul 15 Javascript
JavaScript的垃圾回收机制与内存管理
Aug 06 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生成静态HTML速度快类库
2007/03/18 PHP
10条PHP编程习惯助你找工作
2008/09/29 PHP
使用PHP+AJAX让WordPress动态加载文章的教程
2015/12/11 PHP
WordPress开发中短代码的实现及相关函数使用技巧
2016/01/05 PHP
Javascript miscellanea -display data real time, using window.status
2007/01/09 Javascript
Ajax+Json 级联菜单实现代码
2009/10/27 Javascript
html 锁定页面(js遮罩层弹出div效果)
2009/10/27 Javascript
javascript字符串与数组转换汇总
2015/05/26 Javascript
JS动态创建元素的两种方法
2016/04/20 Javascript
Bootstrap的Refresh Icon也spin起来
2016/07/13 Javascript
JavaScript中匿名函数的递归调用
2017/01/22 Javascript
jQuery+ajax实现修改密码验证功能实例详解
2017/07/06 jQuery
简单实现js放大镜效果
2017/07/24 Javascript
删除table表格行的实例讲解
2017/09/21 Javascript
vue-cli常用设置总结
2018/02/24 Javascript
vue 自定义 select内置组件
2018/04/10 Javascript
koa2+vue实现登陆及登录状态判断
2019/08/15 Javascript
微信小程序中data-key属性之数据传输(经验总结)
2020/08/22 Javascript
[00:34]TI7不朽珍藏III——纯金地穴编织者饰品展示
2017/07/15 DOTA
[01:19:46]DOTA2-DPC中国联赛 正赛 SAG vs DLG BO3 第一场 2月28日
2021/03/11 DOTA
Python 时间操作例子和时间格式化参数小结
2014/04/24 Python
Python单链表的简单实现方法
2014/09/23 Python
python 字符串只保留汉字的方法
2018/11/16 Python
python+jinja2实现接口数据批量生成工具
2019/08/28 Python
pytorch中nn.Conv1d的用法详解
2019/12/31 Python
HTML5 canvas实现移动端上传头像拖拽裁剪效果
2016/03/14 HTML / CSS
摩飞电器俄罗斯官方网站:Morphy Richards俄罗斯
2020/07/30 全球购物
仓库管理专业个人自我评价范文
2013/11/11 职场文书
幼儿园中班新学期寄语
2014/01/18 职场文书
公务员培训自我鉴定
2014/02/01 职场文书
物流仓管员岗位职责
2015/04/01 职场文书
2015年党建工作目标责任书
2015/05/08 职场文书
同学聚会致辞集锦
2015/07/28 职场文书
大学宣传委员竞选稿
2015/11/19 职场文书
MySQL Innodb关键特性之插入缓冲(insert buffer)
2021/04/08 MySQL
Python基础之函数嵌套知识总结
2021/05/23 Python