2024年10月jquery(jquery 简介)

 更新时间:2024-10-12

  ⑴jquery(jquery简介

  ⑵jQuery..(年月:这一版主要是将BrandonAaron开发的流行的Dimensions插件的功能移植到了核心库中,或者对jQuery的某些方法进行重新定义以提供新功能,jQuery提供API让开发者编写插件,jQuery是一个兼容多浏览器的javascript库,为开发新的Ajax插件提供了方便,jQuery.(年月:这一版使用了全新的选择符引擎Sizzle,开发者可以任意扩展jQuery的函数库或者按照自己的需求开发UI组件,开始着手为即将在年发行的scapeNavigator.开发一个称之为LiveScript的脚本语言。

  ⑶JQuery是继prototype之后又一个优秀的Javascript库。它是轻量级的js库,它兼容CSS,还兼容各种浏览器(IE.+,FF.+,Safari.+,Opera.+,jQuery.及后续版本将不再支持IE//浏览器。jQuery使用户能更方便地处理HTML(标准通用标记语言下的一个应用、events、实现动画效果,并且方便地为网站提供AJAX交互。jQuery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。jQuery能够使用户的html页面保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需要定义id即可。

  ⑷jQuery是一个兼容多浏览器的javascript库,核心理念是writeless,domore(写得更少,做得更多)。jQuery在年月由美国人JohnResig在纽约的barcamp发布,吸引了来自世界各地的众多JavaScript高手加入,由DaveMethvin率领团队进行开发。如今,jQuery已经成为最流行的javascript库,在世界前个访问最多的网站中,有超过%在使用jQuery。

  ⑸jQuery是免费、开源的,使用MIT许可协议。jQuery的语法设计可以使开发更加便捷,例如操作文档对象、选择DOM元素、制作动画效果、事件处理、使用Ajax以及其他功能。除此以外,jQuery提供API让开发者编写插件。其模块化的使用方式使开发者可以很轻松的开发出功能强大的静态或动态网页。

  ⑹jQuery,顾名思义,也就是JavaScript和查询(Query,即是辅助JavaScript开发的库。

  ⑺大概在年,一家称作Nombas的公司开发了一种叫做C减减(C-minus-minus,简称Cmm的嵌入式脚本语言。Cmm背后的理念很简单:一个足够强大可以替代宏操作(macro的脚本语言,同时保持与C(和C++足够的相似性,以便开发人员能很快学会。这个脚本语言捆绑在一个叫做CEnvi的共享软件中,它首次向开发人员展示了这种语言的威力。

  ⑻Nombas最终把Cmm的名字改成了ScriptEase,原因是后面的部分(mm听起来过于消极,同时字母C“令人害怕”。

  ⑼当scapeNavigator崭露头角时,Nombas开发了一个可以嵌入网页中的CEnvi的版本。这些早期的试验被称为EspressoPage(浓咖啡般的页面,它们代表了第一个在万维网上使用的客户端语言。而Nombas丝毫没有料到它的理念将会成为万维网的一块重要基石。

  ⑽当网上冲浪越来越流行时,对于开发客户端脚本的需求也逐渐增大。此时,大部分因特网用户还仅仅通过.kbit/s的调制解调器连接到网络,即便这时网页已经不断地变得更大和更复杂。而更加加剧用户痛苦的是,仅仅为了简单的表单有效性验证,就要与服务器进行多次地往返交互。设想一下,用户填完一个表单,点击提交按钮,等待了秒的处理后,看到的却是一条告诉你忘记填写一个必要的字段。

  ⑾那时正处于技术革新最前沿的scape,开始认真考虑开发一种客户端脚本语言来解决简单的处理问题。

  ⑿当时工作于scape的BrendanEich,开始着手为即将在年发行的scapeNavigator.开发一个称之为LiveScript的脚本语言,当时的目的是在浏览器和服务器(本来要叫它LiveWire端使用它。scape与Sun及时完成LiveScript实现。

  ⒀就在scapeNavigator.即将正式发布前,scape将其更名为JavaScript,目的是为了利用Java这个因特网时髦词汇。scape的赌注最终得到回报,JavaScript从此变成了因特网的必备组件。

  ⒁因为JavaScript.如此成功,scape在scapeNavigator.中发布了.版。恰巧那个时候,微软决定进军浏览器,发布了IE.并搭载了一个JavaScript的克隆版,叫做JScript(这样命名是为了避免与scape潜在的许可纠纷。微软步入Web浏览器领域的这重要一步虽然令其声名狼藉,但也成为JavaScript语言发展过程中的重要一步。

  ⒂在微软进入后,有种不同的JavaScript版本同时存在:scapeNavigator.中的JavaScript、IE中的JScript以及CEnvi中的ScriptEase。与C和其他编程语言不同的是,JavaScript并没有一个标准来统一其语法或特性,而这种不同的版本恰恰突出了这个问题。随着业界担心的增加,这个语言的标准化显然已经势在必行。

  ⒃年月,jQuery的第一个版本面世,至今已经有年多了(注:这个时间点是截止至出书时间。虽然过了这么久,但它依然以其简洁、灵活的编程风格让人一见倾心。在本篇文章中,我们将讲述jQuery的发展历史,让读者对jQuery有更多的了解。

  ⒄在jQuery迅速发展的同时,一些大的厂商也看中了商机。年月,微软和诺基亚公司正式宣布支持开源的jQuery库,另外,微软公司还宣称他们将把jQuery作为VisualStudio工具集的一部分。他将提供包括jQuery的智能提示、代码片段、示例文档编制等内容在内的功能。微软和诺基亚公司将长期成为jQuery的用户成员,其他成员还有Google,Intel,IBM,Intuit等公司。年月,jQuery.版发布,它使用了全新的选择符引擎Sizzle,在各个浏览器下全面超越其他同类型JavaScript框架的查询速度,程序库的性能也因此有了极大提升。这一版本的第个变化就是提供live()方法,使用live()方法可以为当前及将来增加的元素绑定事件,在.版之前,如果要为将来增加的元素绑定事件,需要使用livequery插件,而在.版中,可以直接用live()方法。年月,JohnResig提议改进Prototype的“Behaviour”库,于是他在blog上发表了自己的想法,并用了个例子做说明。

  ⒅年月,jQuery..版发布,它新增了有关事件委托的两个方法:delegate()和undelegate()。delegate()用于替代..中的live()方法。这个方法比live()来的方便,而且也可以达到动态添加事件的作用。比如给表格的每个td绑定hover事件

  ⒆方便的工具-例如浏览器版本判断

  ⒇多浏览器支持,支持InterExplorer.+、Opera.+、Firefox+、Safari.+、Chrome.+(在..中取消了对InterExplorer,,的支持

  ⒈年月:该库的第一个稳定版本,已经具有了对CSS选择符、事件处理和AJAX交互的稳健支持。

  ⒉年月:这一版大幅简化了API。许多较少使用的方法被合并,减少了需要掌握和解释的方法数量。

  ⒊年月:这次小版本变化包含了对jQuery选择符引擎执行速度的显著提升。从这个版本开始,jQuery的性能达到了Prototype、Mootools以及Dojo等同类JavaScript库的水平。

  ⒋年月:这一版去掉了对XPath选择符的支持,原因是相对于CSS语法它已经变得多余了。这一版能够支持对效果的更灵活定制,而且借助新增的命名空间事件,也使插件开发变得更容易。

  ⒌jQueryUI(年月:这个新的插件套件是作为曾经流行但已过时的Interface插件的替代项目而发布的。jQueryUI中包含大量预定义好的部件(widget,以及一组用于构建高级元素(例如可拖放的界面元素的工具。

  ⒍年月:这一版主要是将BrandonAaron开发的流行的Dimensions插件的功能移植到了核心库中。

  ⒎年月:这一版使用了全新的选择符引擎Sizzle,库的性能也因此有了极大提升。这一版正式支持事件委托特性。

  ⒏年月:这次小版本升级进一步提升了库的性能,例如改进了:visible/:hidden选择符、.height()/.width()方法的底层处理机制。另外,也支持查询的元素按文档顺序返回。

  ⒐年月号:对代码库进行了内部重写组织,开始建立一些风格规范。老的core.js文件被分为attribute.js,css.js,data.js,manipulation.js,traversing.js和queue.js;CSS和attribute的逻辑分离。

  ⒑Ajax模块完全进行了重写。新增一个jXHR对象,为不同浏览器内置的XMLHttpRequest提供了一致的超集。对于XMLHttpRequest之外的传输机制,比如JSONP请求,jXHR对象也可以进行处理。(详情可以参见:jQuery.ajax文档

  ⒒此外,系统的可扩展性大大增强,可以附加各种数据处理器、过滤器和传输机制,为开发新的Ajax插件提供了方便。

  ⒓延迟对象(DeferredObject,jQuery.Deferred对象是一个可链接的(chainable实用工具对象,实现了Promise接口,可以在回调队列中注册多个回调、调用回调队列并转发任何同步/异步函数的成败状态。正如UsingDeferredsinjQuery.一文中说明的,其结果是在jQuery中能够将依赖于某个任务(事件结果的逻辑与任务本身解耦了。这一点在JavaScript中其实并不新鲜,Mochikit和Dojo等已经实现有些日子了。由于jQuery.的Ajax模块内置使用了延迟对象,因此通过jQuery编写Ajax程序将自动获得这一功能。

  ⒔开发人员借此可以使用无法立即获得的返回值(如异步Ajax请求的返回结果,而且第一次能够附加多个事件处理器。

  ⒕例如,使用了新的jQuery内部AjaxAPI就可以实现下面的代码了:

  ⒖//Assignhandlersimmediatelyaftermakingtherequest,//andrememberthejxhrobjectforthisrequestvarjxhr=$.ajax({url:"example.php"}).suess(function(){alert("suess");}).error(function(){alert("error");}).plete(function(){alert("plete");});//performotherworkhere...//Setanotherpletionfunctionfortherequestabovejxhr.plete(function(){alert("secondplete");});

  ⒗此外,使用jQuery.Deferred还可以开发自己的延迟对象。更多详情参见:延迟对象文档。

  ⒘jQuery.sub()

  ⒙jQuery.提供了一种创建和修改jQuery副本的方式。可以用来添加不向外部公开的方法,或者对jQuery的某些方法进行重新定义以提供新功能,或者提供更好的封装、避免名称空间冲突。当然,也可以用来开发插件,但Resig强烈建议在开发插件之前,先考虑jQueryUIwidget工厂。

  ⒚值得注意的是,sub函数并不提供真正的隔离,所有方法、数据、调用仍然依靠jQuery本身来支持。

  ⒛在新版本中.children(),.prev(),.next()几个常用的遍历函数性能有了显著提高。

  JohnResig还特别提到了jQuery团队内部开发系统的两点改变:一是服务器端用Node.js替换了老的Java/Rhino系统,使得团队可以专注于JavaScript环境的新变化;二是所用的代码优化程序从GoogleClosure切换到UglifyJS,新工具的压缩效果非常令人满意。

  jQuery可以下载使用,有两个版本的jQuery可供下载

  Productionversion-用于实际的网站中,已被精简和压缩。

  Developmentversion-用于测试和开发(未压缩,是可读的代码

  jQuery..版时压缩前后的对比

  jQuery的官方插件是jQueryUI。开发者可以任意扩展jQuery的函数库或者按照自己的需求开发UI组件。网上已经有数以万计的jQuery插件,覆盖各种各样的需求。例如Ajax辅助、数据表格、动态列表、XML工具、拖曳、cookie处理、弹出层等等。jQuery的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择,例如ponentOneStudioforASPWijmo.

  随着jQuery插件在网站建设过程中的使用率不断的增加,所以有必要跟进时代步伐开发出一些新的插件/代码片段,以此来巩固并提高前端用户体验,将用户体验提升到一个新的高度。其中包括FlatjQueryPriceSlider、GmapsjQueryMapPlugin、FormChimp——MailChimpAjaxpluginforjQuery等。

  jQueryGantt控件是一个基于原生HTML/jQuery,功能丰富的控件,该控件真正实现了跨平台,在许多设备和浏览器中无缝的运行。

  使用项目甘特图中内置的调度,依赖等功能实现任务分层列表的可视化。

  使用资源甘特图实现一个资源利用视图。

  使用基于API的jQuery或者基于API的MVC可帮您轻松地安装甘特图并加快应用速度。

  可与诸如KnockOut(KO),jQuery.tmpl等流行的jQuery模式一同使用。

您可能感兴趣的文章:

相关文章