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 相关文章推荐
悄悄用脚本检查你访问过哪些网站的代码
Dec 04 Javascript
JS 无限级 Select效果实现代码(json格式)
Aug 30 Javascript
jquery 倒计时效果实现秒杀思路
Sep 11 Javascript
JS创建对象几种不同方法详解
Mar 01 Javascript
JS生成某个范围的随机数【四种情况详解】
Apr 20 Javascript
深入理解JS DOM事件机制
Aug 06 Javascript
js微信扫描二维码登录网站技术原理
Dec 01 Javascript
bootstrap table配置参数例子
Jan 05 Javascript
解决vue接口数据赋值给data没有反应的问题
Aug 27 Javascript
详解Vue 如何监听Array的变化
Jun 06 Javascript
生成无限制的微信小程序码的示例代码
Sep 20 Javascript
swiper4实现移动端导航栏tab滑动切换
Oct 16 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新手谈谈我的学习心得
2007/02/25 PHP
Php output buffering缓存及程序缓存深入解析
2013/07/15 PHP
PHP根据IP地址获取所在城市具体实现
2013/11/27 PHP
学习php中的正则表达式
2014/08/17 PHP
PHP发送短信代码分享
2015/08/11 PHP
PHP检测用户是否关闭浏览器的方法
2016/02/14 PHP
jquery validate poshytip 自定义样式
2012/11/26 Javascript
浅谈Javascript如何实现匀速运动
2014/12/19 Javascript
jQuery实现鼠标悬停显示提示信息窗口的方法
2015/04/30 Javascript
AngularJS控制器详解及示例代码
2016/08/16 Javascript
详解Node.Js如何处理post数据
2016/09/19 Javascript
不使用script导入js文件的几种方法
2016/10/27 Javascript
使用JQ完成表格隔行换色的简单实例
2017/08/25 Javascript
vue配置多页面的实现方法
2018/05/22 Javascript
vue中当图片地址无效的时候,显示默认图片的方法
2018/09/18 Javascript
200行HTML+JavaScript实现年会抽奖程序
2019/01/22 Javascript
Node.js HTTP服务器中的文件、图片上传的方法
2019/09/23 Javascript
6种JavaScript继承方式及优缺点(小结)
2020/02/06 Javascript
[05:01]3.19DOTA2发布会 我们都是刀塔人
2014/03/25 DOTA
[02:54]DOTA2亚洲邀请赛 VG战队出场宣传片
2015/02/07 DOTA
详解Python文本操作相关模块
2017/06/22 Python
详解用python实现简单的遗传算法
2018/01/02 Python
python对视频画框标记后保存的方法
2018/12/07 Python
python实现udp聊天窗口
2020/03/31 Python
美国中小型企业领先的办公家具供应商:Office Designs
2016/11/26 全球购物
买卖正宗运动鞋:GOAT
2019/12/06 全球购物
htmlentities() 和 htmlspecialchars()有什么区别
2015/07/01 面试题
教育学专业毕业生的自我鉴定
2013/11/26 职场文书
小学安全教育材料
2014/02/17 职场文书
社区党务公开实施方案
2014/03/18 职场文书
化学教育专业自荐信
2014/07/04 职场文书
2015毕业生实习期工作总结
2015/04/09 职场文书
学生犯错保证书
2015/05/09 职场文书
高中班主任寄语
2019/06/21 职场文书
python中数组和列表的简单实例
2022/03/25 Python
mapstruct的用法之qualifiedByName示例详解
2022/04/06 Java/Android