189 8069 5689

jquery1.9,jquery18

jQuery的历史版本

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

创新互联主营安乡网站建设的网络公司,主营网站建设方案,成都app软件开发,安乡h5小程序开发搭建,安乡网站营销推广欢迎安乡等地区企业咨询

jQuery UI(2007年9月):这个新的插件套件是作为曾经流行但已过时的Interface插件的替代项目而发布的。jQuery UI中包含大量预定义好的部件(widget),以及一组用于构建高级元素(例如可拖放的界面元素)的工具。 (2010年1月14号):对代码库进行了内部重写组织,开始建立一些风格规范。老的core.js文件被分为attribute.js,css.js,data.js,manipulation.js,traversing.js和queue.js;CSS和attribute的逻辑分离。

⒈4重要新特性

·常用方法的性能大幅提升:重写了大部分较早期的函数;

·更容易使用的设置函数(setter function):为所有对象新增了许多易用的设置函数;

·对Ajax的改进:引入了许多Ajax和JSON处理方面的更新,包括HTML5元素的序列化;

·attribute(改进了.attr()的性能)、jQuery()核心函数、CSS(.css()性能有两倍提升)、特效和事件、DOM操作等也有显著改进 (2011年1月31日):该版本修复了83个bug,解决了460个问题。重大改进有:重写了Ajax模块;新增延缓对象(Deferred Objects);jQuery替身——jQuery.sub();增强了遍历相邻节点的性能;jQuery开发团队构建系统的改进。

1.5新版本

美国时间2011年1月31日John Resig在jQuery官方博客发表文章,宣布jQuery 1.5正式版已经如期开发完成,可以下载使用。压缩版本jQuery Minified29KB,不压缩版本jQuery Regular(用于阅读和调试)207KB。由于jQuery已经成为目前最流行的JavaScript库,得到广泛的支持,新版本的发布当然非常引人注目。

重要变化:

1. Ajax重写

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

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

2. 延迟对象

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

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

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

// Assign handlers immediately after making the request,// and remember the jxhr object for this request var jxhr = $.ajax({ url: example.php }) .success(function() { alert(success); }) .error(function() { alert(error); }) .complete(function() { alert(complete); });// perform other work here ... // Set another completion function for the request above jxhr.complete(function(){ alert(second complete); });

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

3. jQuery.sub()

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

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

4. 遍历性能提高

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

5. 内部开发系统

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

jQuery 1.5.2 在1.5的基础上修正的大量的bug

jQuery 1.7b 2011年09月29日jQuery 1.7 的第一个 beta 测试版本,该版本修复了超过 50 个的问题以及带来一些新特性。

2011年11月4日jQuery1.7正式版发布。

新版本包含了很多新的特征,特别提升了事件委派时的性能尤其是在IE7下。

新增及改进项:

⒈新的事件 APIs: .on() and .off();

⒉提升了事件委派时的性能有了大幅度的提升,尤其是在IE7下;

⒊更好的在 IE 6/7/8 上支持 HTML5;

⒋切换动画更加直观;

⒌匿名模块定义 AWD

⒍jQuery.Deferred

⒎jQuery.isNumeric()

被删除的方法:

event.layerX and event.layerY

jQuery.isNaN() 2012年03月24日jQuery 1.7.2正式版发布。

该版本在1.7.1的基础上修复了大量的bug,并改进了部分功能。而相比于1.7.2 RC1,只修复了一个bug。值得注意的是:如果你正在使用jQuery Mobile,请使用最新的jQuery 1.7.2和jQuery Mobile 1.1这两个版本,因为之前的jQuery Mobile版本还基于jQuery core 1.7.1或更早的版本。 2012年11月14日 jQuery 1.8.3 发布,修复 bug 和性能衰退问题

IE8中的HTML相关Bug

jQuery 1.8.2在IE9中调用ajax失败的问题

jQuery 1.7.1不能正确地设置IE7中克隆元素的tabindex属性

压缩的JS文件包含非ASCII字符

如果body样式设置为display:none,则$('body').show()无法工作

在IE9中element.css('filter')返回不明确

在Android 2.3.4的浏览器中,jQuery 1.8.1转场效果崩溃

在iPad上缩放一个灯箱效果后,所有动画效果失效

从1.3.2升级到1.8.2版本后,出现Uncaught TypeError错误

在Chrome和Safari中,无法正确检测包含可编辑内容的DIV的焦点 2013年3月 jQuery 2.0 Beta 2 发布

据jQuery官方博客3月消息,jQuery 2.0 Beta 2 发布。

根据用户对jQuery 2.0 Beta 1 版本的反馈,Beta 2 版做了一些修改。jQuery官方表示,非常需要用户来测试 Beta 2 版,最好同时也能向他们反馈提交建议。

他们相信,Beta 2 版已非常稳定,值得一试,不需要等 2.0 的最终版本。

jQuery 团队在官博中再次提醒用户,jQuery 2.0 不再支持IE 6/7/8 了,但是 jQuery 1.9 会继续支持。因为旧版 IE 浏览器在整个互联网中还有很大部分市场,所以他们非常期望大部分网站能继续使用 jQuery 1.x 一段时间。jQuery 团队也将同时支持 jQuery 1.x 和 2.x 。1.9 和 2.0 版的 API 是相同的,所以不必因为你们网站还在用 jQuery 1.9,就感觉好像错过了什么,或者是落后了。

如果你想继续支持 IE 6/7/8,并且又想尝试 jQuery 2.0,那你可以额外加上一些代码。除了老版的 IE,其他所有浏览器都将使用第二脚本,忽略第一个。

在很多环境中,jQuery 2.0 应当都表现的很好。如下:

Google Chrome plugins

Mozilla XUL apps and Firefox extensions

Firefox OS apps

Chrome OS apps

Windows 8 Store (“Modern/Metro UI”) apps

BlackBerry 10 WebWorks apps

PhoneGap/Cordova apps

Apple UIWebView class

Microsoft WebBrowser control

Cheerio or jsdom with Node.js

Intranet applications

2013年4月18日 jQuery 2.0正式版发布 不再支持IE 6/7/8:如果在IE9/10版本中使用“兼容性视图”模式也将会受到影响。 更轻更快:2.0版本文件与1.9.1相比小了12%。 可以构建一个更小、更轻量的版本。 jQuery 2.0 API完全兼容jQuery 1.9 API。 jQuery 1.9.1汉化版2013年2月23日发布,由网友翻译非官方 2014年5月1日,jQuery2.1.1版发布

jquery在实际开发中,一般推荐使用什么版本

这个并没有一个固定的答案,需要根据项目需求来定(就是你这个项目要兼容哪些平台,具体的兼容情况是怎么样的),不同的版本对浏览器的支持程度是不一样的。

jQuery1.x版本的框架时兼容所有IE浏览器的,而2.x版本的jQuery框架并不支持低端IE浏览器。此处的低端IE浏览器指的是IE8版本以及8版本以下。所以,对于需要全兼容的项目,就不得不使用1.x版本啦。

当前3.2.1版本支持情况:

PC端

Chrome: (Current - 1) and Current

Edge: (Current - 1) and Current

Firefox: (Current - 1) and Current

Internet Explorer: 9+

Safari: (Current - 1) and Current

Opera: Current

移动端

Stock browser on Android 4.0+

Safari on iOS 7+

资料来源:

HTML5学堂

jQuery1.8和1.9有什么区别.最大区别在哪里

1.9和1.8的区别主要在于:

XSS保护

$()方法如果传入script标签可以创建HTML元素并运行脚本。开发者有时会忘了这点,将非安全处取得的资源传入jQuery中从而导致了cross-site-scripting(XSS)的攻击。在jQuery

1.9中,$()方法更严格地限制了传入规则,字符串只有当首字母是“”符号时才会被认为是HTML,否则会被当作是CSS选择器。

移除$.browser,$.sub

$.browser在jQuery 1.3中被废弃,并将在jQuery

1.9中被移除。开发者可以换用$.support或者直接读取navigator.userAgent。

$.sub在jQuery 1.7中被废弃,同样也将在jQuery

1.9中被移除。该函数新建jQuery的副本,对它属性或方法的修改不会影响原先的jQuery对象。但这个函数并未被证明是有用的,所以移到了1.9的兼容插件里。这样jQuery

1.9文件的尺寸会变得更小。

jQuery基本选择器选择元素使用介绍

复制代码

代码如下:

html

xmlns=""

head

!--

1.基本选择器:是jQuery中使用最频繁的选择器,它由元素Id、Class、元素名、多个选择符组成,通过基本选择器可以实现大多数页面元素的查找

jQuery选择器详解

根据所获取页面中元素的不同,可以将jQuery选择器分为:基本选择器、层次选择器、过滤选择器、表单选择器四大类。其中,在过滤选择器中有可以分为:简单过滤选择器、内容过滤选择器、可见性过滤选择器、属性过滤选择器、子元素过滤选择器、表单对象属性过滤选择器6种

--

title/title

!--使用jQuery基本选择器选择元素:一个页面包含两个div标记,其中一个用于设置ID属性,另一个用于设置Class属性;我们再增加一个span标记,全部元素初始值均为隐藏,然后通过jQuery基本选择器显示相应的页面标记。--

script

src="jquery-1.9.1.js"

type="text/javascript"/script

style

type="text/css"

body{font-size:12px;text-align:center;}

.clsFrame{width:300px;height:100px}

.clsFrame

div,span{display:none;float:left;width:65px;height:65px;border:solid

1px

#ccc;margin:8px}

.clsOne{background-color:#eee}

/style

script

type="text/javascript"

$(function

()

{

//ID匹配元素

$('#divOne').css('display',

'block');

})

$(function

()

{

//元素名匹配元素

$('div

span').css('display',

'block');

})

$(function

()

{

//类匹配元素

$('.clsFrame

.clsOne').css('display',

'block');

})

$(function

()

{

//匹配所有元素

$('*').css('display',

'block');

})

$(function

()

{

//合并匹配元素

$('#divOne,span').css('display',

'block');

})

/script

/head

body

div

class="clsFrame"

div

id="divOne"

ID/div

div

class="clsOne"

CLASS/div

spanSPAN/span

/div

/body

/html

jquery绑定点击事件的方法

jQuery绑定点击事件可以使用其绑定事件函数

jquery中四个事件绑定方式(bind,live,delegate,on)

1、bind()    

简要描述

bind()向匹配元素添加一个或多个事件处理器。

使用方式

$(selector).bind(event,data,function)

event:必需项;添加到元素的一个或多个事件,例如 click,dblclick等;

单事件处理:例如 $(selector).bind("click",data,function);

多事件处理:

1.利用空格分隔多事件,例如 $(selector).bind("click dbclick mouseout",data,function);

2.利用大括号灵活定义多事件,例如 $(selector).bind({event1:function, event2:function, ...}) 

3.空格相隔方式:绑定较为死板,不能给事件单独绑定函数,适合处理多个事件调用同一函数情况;

大括号替代方式:绑定较为灵活,可以给事件单独

绑定函数; 

data:可选;需要传递的参数;

function:必需;当绑定事件发生时,需要执行的函数;

适用Jquery版本

适用所有版本,但是根据官网解释,自从jquery1.7版本以后bind()函数推荐用on()来代替。

2、live()   

简要描述

live() 向当前或未来的匹配元素添加一个或多个事件处理器;

使用方式

$(selector).live(event,data,function)

event:必需项;添加到元素的一个或多个事件,例如 click,dblclick等;

单事件处理:例如 $(selector).live("click",data,function);

多事件处理:1.利用空格分隔多事件,例如 $(selector).live("click dbclick mouseout",data,function);

2.利用大括号灵活定义多事件,例如 $(selector).live({event1:function, event2:function, ...}) 

3.空格相隔方式:绑定较为死板,不能给事件单独绑定函数,适合处理多个事件调用同一函数情况;

大括号替代方式:绑定较为灵活,可以给事件单独绑定函数; 

data:可选;需要传递的参数;

function:必需;当绑定事件发生时,需要执行的函数;

适用Jquery版本

jquery1.9版本以下支持,jquery1.9及其以上版本删除了此方法,jquery1.9以上版本用on()方法来代替。

3、delegate()

简要描述

delegate() 为指定的元素(被选元素的子元素)添加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。使用 delegate() 方法的事件处理程序适用于当前或未来的元素(比如由脚本创建的新元素)。

使用方式 

$(selector).delegate(childSelector,event,data,function)

childSelector: 必需项;需要添加事件处理程序的元素,一般为selector的子元素;

event:必需项;添加到元素的一个或多个事件,例如 click,dblclick等;

单事件处理:例如 $(selector).delegate(childselector,"click",data,function);

多事件处理:1.利用空格分隔多事件,例如 $(selector).delegate(childselector,"click dbclick mouseout",data,function);

2.利用大括号灵活定义多事件,例如 $(selector).delegate(childselector,{event1:function, event2:function, ...}) 

3.空格相隔方式:绑定较为死板,不能给事件单独绑定函数,适合处理多个事件调用同一函数情况;

大括号替代方式:绑定较为灵活,可以给事件单独绑定函数; 

data:可选;需要传递的参数;

function:必需;当绑定事件发生时,需要执行的函数;

适用Jquery版本

jquery1.4.2及其以上版本;

4、on()

简要描述

on() 为指定的元素,添加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。使用 on() 方法的事件处理程序适用于当前或未来的元素(比如由脚本创建的新元素)。

使用方式 

$(selector).on(event,childselector,data,function)

event:必需项;添加到元素的一个或多个事件,例如 click,dblclick等;

单事件处理:例如 $(selector).on("click",childselector,data,function);

多事件处理:1.利用空格分隔多事件,例如 $(selector).on("click dbclick mouseout",childseletor,data,function);

2.利用大括号灵活定义多事件,例如 $(selector).on({event1:function, event2:function, ...},childselector); 

3.空格相隔方式:绑定较为死板,不能给事件单独绑定函数,适合处理多个事件调用同一函数情况;

大括号替代方式:绑定较为灵活,可以给事件单独绑定函数; 

childSelector: 可选;需要添加事件处理程序的元素,一般为selector的子元素;

data:可选;需要传递的参数;

function:必需;当绑定事件发生时,需要执行的函数;

适用Jquery版本

jquery1.7及其以上版本;jquery1.7版本出现之后用于替代bind(),live()绑定事件方式;

四种方式的异同和优缺点

相同点:

1.都支持单元素多事件的绑定;空格相隔方式或者大括号替代方式;

2.均是通过事件冒泡方式,将事件传递到document进行事件的响应;

比较和联系:

1.bind()函数只能针对已经存在的元素进行事件的设置;但是live(),on(),delegate()均支持未来新添加元素的事件设置;

2.bind()函数在jquery1.7版本以前比较受推崇,1.7版本出来之后,官方已经不推荐用bind(),替代函数为on(),这也是1.7版本新添加的函数,同样,可以

用来代替live()函数,live()函数在1.9版本已经删除;

3.live()函数和delegate()函数两者类似,但是live()函数在执行速度,灵活性和CSS选择器支持方面较delegate()差些

4.bind()支持Jquery所有版本;live()支持jquery1.8-;delegate()支持jquery1.4.2+;on()支持jquery1.7+; 

总结

如果项目中引用jquery版本为低版本,推荐用delegate(),高版本jquery可以使用on()来代替,以上仅为个人看法

jquery怎么找到位置

div class="menu"

div class="menu-item active"菜单一/div

div class="menu-item"菜单二/div

div class="menu-item"菜单三/div

/div

div class="content"

div内容一/div

div class="hide"内容二/div

div class="hide"内容三/div

/div

script type="text/javascript" src="../js/jquery1.9.1.js"/script

script

$(function(){

$(".menu div").click(function(){

var t=$(this).index();

$(".menu div").each(function(i,e){

if(t==i){

$(e).addClass("active");

$(".content div").eq(i).removeClass("hide");

}else{

$(e).removeClass("active");

$(".content div").eq(i).addClass("hide");

}

});

});

});

/script


分享名称:jquery1.9,jquery18
文章地址:http://jkwzsj.com/article/dsepihd.html

其他资讯