您的位置:首页 > Web前端 > JQuery

读Zepto源码之Stack模块

2017-10-16 00:00 155 查看
Stack
模块为
Zepto
添加了
addSelf
end
方法。

读 Zepto 源码系列文章已经放到了github上,欢迎star: reading-zepto

源码版本

本文阅读的源码为 zepto1.2.0

GitBook

reading-zepto

改写原有的方法

'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
方法是将集合还原到前一个状态,其实就是将上一个集合返回。

系列文章

读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)

最后,所有文章都会同步发送到微信公众号上,欢迎关注,欢迎提意见:


作者:对角另一面
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript Zepto.js jQuery