读Zepto源码之Stack模块
来源:互联网 发布:为什么要学c语言 编辑:程序博客网 时间:2024/06/08 13:49
Stack
模块为 Zepto
添加了 addSelf
和 end
方法。
读 Zepto 源码系列文章已经放到了github上,欢迎star: reading-zepto
源码版本
本文阅读的源码为 zepto1.2.0
改写原有的方法
'filter,add,not,eq,first,last,find,closest,parents,parent,children,siblings'.split(',').forEach(function(property) { var fn = $.fn[property] $.fn[property] = function() { var ret = fn.apply(this, arguments) ret.prevObject = this return ret }})
Stack
模块改写了以上这些方法,这些方法在调用的时候,会为返回的结果 ret
添加 prevObject
的属性,用来保存原来的集合。
.addSelf()
$.fn.andSelf = function() { return this.add(this.prevObject || $())}
addSelf
方法是在链式调用以上方法的时候,将原来的集合添加到当前的集合中。add
方法的分析可以看《读Zepto源码之Callbacks模块》。
.end()
$.fn.end = function() { return this.prevObject || $()}
end
方法是将集合还原到前一个状态,其实就是将上一个集合返回。
GitBook
《reading-zepto》
系列文章
- 读Zepto源码之代码结构
- 读Zepto源码之内部方法
- 读Zepto源码之工具函数
- 读Zepto源码之神奇的$
- 读Zepto源码之集合操作
- 读Zepto源码之集合元素查找
- 读Zepto源码之操作DOM
- 读Zepto源码之样式操作
- 读Zepto源码之属性操作
- 读Zepto源码之Event模块
- 读Zepto源码之IE模块
- 读Zepto源码之Callbacks模块
- 读Zepto源码之Deferred模块
- 读Zepto源码之Ajax模块
- 读Zepto源码之Assets模块
- 读Zepto源码之Selector模块
- 读Zepto源码之Touch模块
- 读Zepto源码之Gesture模块
- 读Zepto源码之IOS3模块
- 读Zepto源码之Fx模块
- 读Zepto源码之fx_methods模块
附文
- 译:怎样处理 Safari 移动端对图片资源的限制
License
署名-非商业性使用-禁止演绎 4.0 国际 (CC BY-NC-ND 4.0)
最后,所有文章都会同步发送到微信公众号上,欢迎关注,欢迎提意见:
作者:对角另一面
阅读全文
0 0
- 读Zepto源码之Stack模块
- 读Zepto源码之Event模块
- 读Zepto源码之Event模块
- 读Zepto源码之Callbacks模块
- 读Zepto源码之Callbacks模块
- 读Zepto源码之Deferred模块
- 读Zepto源码之Event模块
- 读Zepto源码之Ajax模块
- 读Zepto源码之Ajax模块
- 读Zepto源码之Ajax模块
- 读Zepto源码之assets模块
- 读Zepto源码之Selector模块
- 读Zepto源码之Touch模块
- 读Zepto源码之Gesture模块
- 读Zepto源码之IOS3模块
- 读Zepto源码之IOS3模块
- 读Zepto源码之Fx模块
- 读Zepto源码之fx_methods模块
- Cocos 中的自动绑定
- 函数一致性导数的定义
- Matlab中image、imagesc和imshow函数用法解析
- Cocos 中的脚本绑定
- 洛谷 P1083 借教室
- 读Zepto源码之Stack模块
- Js C++手动绑定(案例1)
- Codeforces Round #440 div2 B Maximum of Maximums of Minimums
- 编码神器Atom使用详解
- 一个oracle 用户下面创建多个实例
- 小型的Unix系统字符SHELL
- c++中的各种类型转换
- Codeforces Round #440 (Div. 2)C. Maximum splitting
- angularjs 初使用