jQuery.pushStack的深入讲解
来源:互联网 发布:mysql 主键从0开始 编辑:程序博客网 时间:2024/06/07 05:42
pushStack用来做什么?
- 注释解释:返回新的元素集合但保持旧元素的集合---实现链式风格end()方法
<pre class="javascript" name="code">jQuery.fn =jQuery.prototype={pushStack: function( elems, name, selector ) { // 初始化一个空的jQuery对象 var ret = jQuery(); // 如果参数elems是数组 则调用jQuery的push方法 将elems的所有元素推进ret集合中 if ( jQuery.isArray( elems ) ) { push.apply( ret, elems ); } else { //merge用法 也是用于合并,将elems的所有元素合并进入ret jQuery.merge( ret, elems ); } // this表示调用的jQuery对象,如$("p").pushStack() // this就表示$("p") 这样做为了不丢失$("p")集合, //这样可以支持链式操作 $("div").find("p").end()==$("div") // end: function() {//return this.prevObject || this.constructor(null);//} ret.prevObject = this; ret.context = this.context; if ( name === "find" ) { // 修正选择符 比如 $("div").pushStack(elems,"find","p") //则ret的选择符将变为 selector---->"div p"; ret.selector = this.selector + (this.selector ? " " : "") + selector; } else if ( name ) { // 修正选择符 比如 $("div").pushStack(elems,"filter",".wain") //则ret的选择符将变为 selector---->"div.filter(.wain)"; ret.selector = this.selector + "." + name + "(" + selector + ")"; } // 返回新结合 return ret; }}
0 0
- jQuery.pushStack的深入讲解
- jQuery对象的入栈pushStack()
- jQuery中的pushStack
- jQuery源码分析-----pushStack
- 2.理解merge和pushStack可以更好的了解jQuery原码
- jQuery原型方法.pushStack源码分析
- jQuery-源码阅读,pushStack()入栈方法
- JAVASE_17_反射的深入讲解
- 反射的深入讲解 1
- 反射的深入讲解2
- 深入讲解Struts2的用法
- css 关于position 深入严谨的讲解
- css 关于position 深入严谨的讲解
- 深入讲解数据库设计的相关概念
- 函数指针的深入剖析与讲解
- 函数指针的深入剖析与讲解
- 函数指针的深入剖析与讲解
- 黑马程序员—反射的深入讲解
- linux 查看硬件、OS、内存信息
- Swift--基本数据类型(一)
- 15.4.2 可变参数与泛型方法
- uva 10534 Wavio Sequence
- 浏览器兼容性问题
- jQuery.pushStack的深入讲解
- 深入浅出Cocoa之Bonjour网络编程
- Maven深入
- 数字基root
- ValidateRequest="false" 无效
- 查找 Kth 小的数
- 外设实战之搭建开发环境
- 多重继承
- html键盘松开事件