jquery学习链式操作
2014-05-09 01:07
197 查看
如果不使用链式操作,需要用两条语句才能完成上面的任务:关于jQuery链式操作,简单说:好的代码会带来速度的提升。快速渲染和响应意味着更好的用户体验。那么jQuery链式操作就能实现该目的,下面就来讲讲jQuery的链式操作,很多时候我们写代码的时候会这样去写:
如果不使用链式操作,需要用两个事件的操作onmouseover,mouseout才能完成任务。这样的写法代码量大,非常影响性能。有没有更为简便的方法去写代码呢? 答案就在jQuery链式操作,这是个非常好的减少代码的书写方式,也去优化了性能方面的问题。
这样的方式简单明了,一行代码解决,好的代码就是这样的产生的。
对于jquery中的一些操作,如执行完mouseover或者mouseout等方法后,都会返回当前的对象,所以可以进行链式操作, 及不用 再去写函数名了,直接在上一个方法后面接上下一个方法。
在一个较短的链式操作中,往往语句比较清晰,可以分步骤地对jQuery对象实现各种操作。但是链式操作不应该太长,否则会造成语句难以理解,因为要查看jQuery对象当前的状态并不是容易的事,尤其如果涉及jQuery对象中元素的增删操作是更加难以判断。并不是所有的jQuery函数都可以使用链式操作。这与链式操作的原理有关,之所以可以实现链式操作是因为其中的每个函数返回的都是jQuery对象本身。在jQuery类库的内部实现中,虽然很多的函数都返回jQuery对象本身,但都是通过调用内部有限的几个函数实现的,比如attr()函数设置属性石,实际上最后调用了”jQuery.each(object,callback,args)”方法。注意此方法不是jQuery对象方法,jQuery对象方法也有一个each()函数,为”jQuery.fn.each(callback,args)”,此函数最后同样调用jQuery.each函数。
代码:$("p").on({ mouseover:function(){ $(this).addClass("soso")}), mouseout:function(){ $(this).removeClass("soso")});
如果不使用链式操作,需要用两个事件的操作onmouseover,mouseout才能完成任务。这样的写法代码量大,非常影响性能。有没有更为简便的方法去写代码呢? 答案就在jQuery链式操作,这是个非常好的减少代码的书写方式,也去优化了性能方面的问题。
代码:$("p").mouseover(function(){ $(this).addClass("soso")}).mouseout(function(){$(this).removeClass("soso")});
这样的方式简单明了,一行代码解决,好的代码就是这样的产生的。
对于jquery中的一些操作,如执行完mouseover或者mouseout等方法后,都会返回当前的对象,所以可以进行链式操作, 及不用 再去写函数名了,直接在上一个方法后面接上下一个方法。
在一个较短的链式操作中,往往语句比较清晰,可以分步骤地对jQuery对象实现各种操作。但是链式操作不应该太长,否则会造成语句难以理解,因为要查看jQuery对象当前的状态并不是容易的事,尤其如果涉及jQuery对象中元素的增删操作是更加难以判断。并不是所有的jQuery函数都可以使用链式操作。这与链式操作的原理有关,之所以可以实现链式操作是因为其中的每个函数返回的都是jQuery对象本身。在jQuery类库的内部实现中,虽然很多的函数都返回jQuery对象本身,但都是通过调用内部有限的几个函数实现的,比如attr()函数设置属性石,实际上最后调用了”jQuery.each(object,callback,args)”方法。注意此方法不是jQuery对象方法,jQuery对象方法也有一个each()函数,为”jQuery.fn.each(callback,args)”,此函数最后同样调用jQuery.each函数。
相关文章推荐
- JQuery链式操作学习对比
- Jquery重新学习之五[操作JSON数据]
- 轻松学习jQuery插件EasyUI EasyUI实现拖动基本操作
- jquery中dom操作和事件的实例学习-表单验证
- jquery链式操作
- jQuery学习教程(七):val()与节点操作
- jQuery 学习笔记一(认识jQuery jQuery选择器 jQuery中的DOM操作)
- jQuery操作Table学习总结
- 18/2/07.JQuery的学习(四)——操作DOM(下)
- jQuery学习笔记之DOM操作
- 从零开始学 Web 之 jQuery(三)元素操作,链式编程,动画方法
- a毛 jquery 学习记 5 基础DOM和CSS操作3
- jquery中dom操作和事件的实例学习 仿yahoo邮箱登录框的提示效果
- jQuery操作Table学习总结
- 知识学习——jQuery CSS操作
- [轉]让PHP支持像jQuery那样的链式操作
- 从零开始学习jQuery (四) 使用jQuery操作元素的属性与样式
- javascript与jQuery对照学习总结(一)(一些常规操作)
- 前端学习笔记(zepto或jquery)——对li标签的相关操作(二)
- 从零开始学习jQuery (四) 使用jQuery操作元素的属性与样式