jQuery
原作者 | John Resig |
---|---|
开发者 | jQuery Team |
当前版本 | 2.0.2(2013年5月30日 | )
预览版本 | 2.0 Beta 3(2013年4月9日 | )
原始码库 | |
编程语言 | JavaScript |
类型 | 网页应用程式框架 |
许可协议 | MIT许可证 |
网站 | jquery.com |
jQuery是一套跨浏览器的JavaScript函数库,简化HTML与JavaScript之间的操作。[1]由John Resig在2006年1月的BarCamp NYC上发布第一个版本。目前是由 Dave Methvin 领导的开发团队进行开发。全球前10000个访问最高的网站中,有59%使用了jQuery,是目前最受欢迎的JavaScript函数库[2][3]。
简介
jQuery 是开源软件,使用MIT许可证授权。[4] jQuery的语法设计使得许多操作变得容易,如操作文档对象(document)、选择DOM元素、创建动画效果、处理事件、以及开发Ajax程序。jQuery 也提供了给开发人员在其上创建插件的能力。这使开发人员可以对底层交互与动画、高级效果和高级主题化的组件进行抽象化。模块化的方式使 jQuery 函数库能够创建功能强大的动态网页以及网络应用程式。
微软和诺基亚已宣布在他们的平台上绑定jQuery。[5] 微软最初在Visual Studio中集成了jQuery[6]以便在微软自己的 ASP.NET AJAX 框架和 ASP.NET MVC Framework 中使用,而诺基亚则在他的Web运行时组件开发平台中集成了jQuery[7]。MediaWiki自从1.16版本后也开始使用jQuery[8]。
jQuery 1.3版以后,引入全新的CSS选择器引擎Sizzle。[9] 同时不再提供Packed版本,因为解压缩的消耗的时间,远大于所节省的下载时间,且不利于Debug,且已有Google AJAX Libraries API等公开站台提供jQuery的js的引用服务,故Packed版本原本的优点已荡然无存。
特点
jQuery有下列特色:
- 跨浏览器的DOM元素选择
- DOM巡访与更改:支持CSS 1-3
- 事件(Events)
- CSS操纵
- 特效和动画(移动显示位置、淡入、淡出)
- Ajax
- 延伸性(Extensibility)
- 工具:例如浏览器版本(已取消内建,改由jQuery Migrate plugin外挂提供)和
each
函数。 - JavaScript插件
- 轻量级
- jQuery 1.8.0版时(内建Sizzle.js):
文件 行数 大小 jquery-1.8.0.min.js 2 91KB jquery-1.8.0.js 9228 254KB
- 经由jQuery的DHTML DOM选择器,可以更容易的操作在复杂的树状HTML中的任何DHTML DOM物件,并可用链式语法对同一物件的不同属性进行操作。
- 例如:
$("p.surprise").addClass("ohmy").show("slow");
- 相当于
- 查找HTML的<p>标签,且其class为"surprise"的DHTML DOM物件
- 将其Class属性多加上一个"ohmy"(通常是配CSS的定义做显示时的配色修改)
- 开启显示
- 例如:
- CSS 1-3选择器:支持CSS选择器选定DOM对象。
- 跨浏览器:跨浏览器的AJAX解决方式,支持Internet Explorer 6.0+、Opera 9.0+、Firefox 2+、Safari 2.0+、Google Chrome 1.0+
- 简单:较其它JavaScript库更易于入门。
加载jQuery
使用CDN加载jQuery的好处是若不同的网站使用同样的链接时可以不用重复下载,另外也可不用在自己的伺服器上部署jQuery文件。
- 以jQuery 1.8.0版为例
- From Microsoft Ajax Content Delivery Network
<script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.8.0.min.js"></script>
- From Google Libraries API
- 其中1.8.0若改为1.8,可获取1.8.x最新版本
- 改为1,可获取1.x.x最新版本
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
- 或
<script src="https://www.google.com/jsapi"></script>
<script>
google.load("jquery", "1.8.0");
</script>
发布版本
发布日期 | 版本号码 | 备注 |
---|---|---|
2006年8月26日 | 1.0 | 最初的稳定版本 |
2006年8月31日 | 1.0.1 | |
2006年10月9日 | 1.0.2 | |
2006年10月27日 | 1.0.3 | |
2006年12月12日 | 1.0.4 | Last 1.0 bug fix |
2007年1月14日 | 1.1 | |
2007年1月22日 | 1.1.1 | |
2007年2月27日 | 1.1.2 | |
2007年7月1日 | 1.1.3 | |
2007年7月5日 | 1.1.3.1 | |
2007年8月24日 | 1.1.4 | |
2007年9月10日 | 1.2 | jQuery 1.2版以后默认取消XPath支持,改为插件支持 |
2007年9月16日 | 1.2.1 | |
2008年1月15日 | 1.2.2 | |
2008年2月8日 | 1.2.3 | |
2008年5月19日 | 1.2.4 | |
2008年5月21日 | 1.2.5 | 修正1.2.4版的bug |
2008年5月24日 | 1.2.6 | |
2009年1月14日 | 1.3 | Sizzle选择器引擎导入至核心 |
2009年1月21日 | 1.3.1 | |
2009年2月20日 | 1.3.2 | |
2010年1月14日 | 1.4 | |
2010年1月25日 | 1.4.1 | |
2010年2月19日 | 1.4.2 | |
2010年10月16日 | 1.4.3 | |
2010年11月11日 | 1.4.4 | |
2011年1月31日 | 1.5 | |
2011年2月24日 | 1.5.1 | |
2011年3月31日 | 1.5.2 | |
2011年5月3日 | 1.6 | 改善 attr() 与 val() 的性能 |
2011年5月12日 | 1.6.1 | |
2011年6月30日 | 1.6.2 | |
2011年9月1日 | 1.6.3 | |
2011年9月12日 | 1.6.4 | |
2011年11月3日 | 1.7 | |
2011年11月21日 | 1.7.1 | |
2012年3月21日 | 1.7.2 | |
2012年8月9日 | 1.8.0 | Sizzle选择器引擎重写, 提高动画与 $(html, props) 更具弹性. |
2012年8月30日 | 1.8.1 | |
2012年9月20日 | 1.8.2 | |
2012年11月13日 | 1.8.3 | |
2013年1月15日 | 1.9.0 | 移除过时API[10] |
2013年2月4日 | 1.9.1 | |
2013年4月18日 | 2.0.0 | 除去对Internet Explorer 6-8的支持以提高性能,并降低文件大小 |
2013年5月24日 | 2.0.1 | |
2013年5月30日 | 2.0.2 |
子项目
以下项目均是源自于Interface插件
jQuery UI
基于jQuery的用户界面库,包括拖放、缩放、对话框、标签页等多个组件。
jQuery Tools
jQuery Tools是一个第三方的包,基于jQuery。包括了标签页、窗体验证、滑鼠滚轮事件等多个组件。[11]
jQuery Mobile
基于jQuery的手机网页制作工具,jQuery Mobile的网站上包含了网页的设计工具、主题设计工具。另外jQuery Mobile的js插件包含了换页、事件等的多项功能。[12]
相关书籍
- 英文
- Learning jQuery, ISBN 1-84719-250-5
- jQuery in Action, ISBN 1-933988-35-5
- Pro JavaScript Techniques, ISBN 1-59059-727-3
- 中文
- 锋利的jQuery , ISBN 978-7-115-20701-2
- 网页设计?爱上jQuery, ISBN 978-986-6850-84-4
- Learning jQuery中文版,ISBN 978-986-6761-60-7
- jQuery UI & Plugins, ISBN 978-986-6551-11-6
参考资料
- ^ jQuery: The write less, do more, JavaScript library. The jQuery Project. [29 April 2010].
- ^ jQuery Usage Statistics. [2012-11-13].
- ^ Usage of JavaScript libraries for websites. W3Techs. [2010-07-08].
- ^ License – JQuery JavaScript Library. [2009-11-26].
- ^ Resig, John. jQuery, Microsoft, and Nokia. jQuery Blog. jQuery. 2008-09-28 [2009-01-29].
- ^ Guthrie, Scott. jQuery and Microsoft. ScottGu's Blog. 2008-09-28 [2009-01-29].
- ^ Guarana UI: A jQuery Based UI Library for Nokia WRT. Forum Nokia. [2010-03-30].
- ^ jQuery. MediaWiki. January 19, 2012 [March 11, 2012].
- ^ Release:jQuery 1.3.
- ^ jQuery Core 1.9 Upgrade Guide
- ^ http://jquerytools.org
- ^ http://jquerymobile.org
外部链接
- jQuery官方网站
- jQuery UI官方网站
- jQuery中文参考文档项目
- 15 Days Of jQuery……JQuery教学网站
- jQuery - Google Code(各版本JQuery的下载处)
- YouTube上的jQuery(2008年4月3日,Google Tech Talks)
- jQuery教学
- jQuery1.7 中文 API
- GBin1在线实例帮助你更好的了解jQuery功能特性(一)
- GBin1在线实例帮助你更好的了解jQuery功能特性(二)
- GBin1在线实例帮助你更好的了解jQuery功能特性(三)
- 【jQuery专题】分享各种优秀的jQuery插件和jQuery开发教程
- IntelliSense相关更新(VS2008 SP1)