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 相关文章推荐
用js实现下载远程文件并保存在本地的脚本
May 06 Javascript
js的一些常用方法小结
Jun 29 Javascript
jQuery实现动画效果的简单实例
Jan 27 Javascript
jQuery中阻止冒泡事件的方法介绍
Apr 12 Javascript
js实现仿阿里巴巴城市选择框效果实例
Jun 24 Javascript
Bootstrapvalidator校验、校验清除重置的实现代码(推荐)
Sep 28 Javascript
Jquery Easyui验证组件ValidateBox使用详解(20)
Dec 18 Javascript
JS实现的tab切换选项卡效果示例
Feb 28 Javascript
Mac中安装nvm的教程分享
Dec 11 Javascript
vue.js 实现输入框动态添加功能
Jun 25 Javascript
layui问题之渲染数据表格时,仅出现10条数据的解决方法
Sep 12 Javascript
基于javascript实现碰撞检测
Mar 12 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
CI框架中cookie的操作方法分析
2014/12/12 PHP
php读取csc文件并输出
2015/05/21 PHP
PHP如何通过AJAX方式实现登录功能
2015/11/23 PHP
thinkphp实现图片上传功能
2016/01/13 PHP
PHP PDOStatement::fetchAll讲解
2019/01/31 PHP
JS去除字符串的空格增强版(可以去除中间的空格)
2009/08/26 Javascript
jquery时间下拉框小例子
2013/04/15 Javascript
javascript和HTML5利用canvas构建猜牌游戏实现算法
2013/07/17 Javascript
JS动态改变浏览器标题的方法
2016/04/06 Javascript
很酷的星级评分系统原生JS实现
2016/08/25 Javascript
JS实现页面进入和返回定位到具体位置
2016/12/08 Javascript
基于JavaScript实现的顺序查找算法示例
2017/04/14 Javascript
使用原生js写ajax实例(推荐)
2017/05/31 Javascript
Vue自定义事件(详解)
2017/08/19 Javascript
VueJS组件之间通过props交互及验证的方式
2017/09/04 Javascript
Vue组件化开发思考
2018/02/02 Javascript
浅谈让你的代码更简短,更整洁,更易读的ES6小技巧
2018/10/25 Javascript
node使用request请求的方法
2019/12/20 Javascript
JavaScript数组排序小程序实现解析
2020/01/13 Javascript
vue-cli3单页构建大型项目方案
2020/04/07 Javascript
微信小程序实现页面左右滑动
2020/11/16 Javascript
Matplotlib 生成不同大小的subplots实例
2018/05/25 Python
pandas重新生成索引的方法
2018/11/06 Python
python matplotlib画盒图、子图解决坐标轴标签重叠的问题
2020/01/19 Python
css3学习系列之移动属性详解
2017/07/04 HTML / CSS
html5中audio支持音频格式的解决方法
2018/08/24 HTML / CSS
当当网软件测试笔试题
2015/11/24 面试题
中文专业毕业生自荐书范文
2014/01/04 职场文书
管理部副部长岗位职责范文
2014/03/09 职场文书
银行求职信范文
2014/05/26 职场文书
事业单位年度考核评语
2014/12/31 职场文书
求职意向书范本
2015/05/11 职场文书
外出培训学习心得体会
2016/01/18 职场文书
2019年公司卫生管理制度样本
2019/08/21 职场文书
Python Flask请求扩展与中间件相关知识总结
2021/06/11 Python
CSS的calc函数用法小结
2022/06/25 HTML / CSS