jquery1.0源码解读
jquery1.0 版本的 静态parents函数
jQuery.parents:
1 | parents: function( elem ){ |
通过jQuery.macros.axis来调用:
jQuery.macros:
1 | jQuery.each( jQuery.macros.axis, function(i,n){ |
###
1 | jQuery.macros = { |
而在1.2.6版本中,我们可以看到做出的变化:
1 | jQuery.each({ |
通过调用jQuery.dir静态函数:
jQuery.dir:
1 | jQuery.dir(elem,"parentNode"); |
jQuery.dir函数如下,其实和1.0版本中的jQuery.parents大同小异:1
2
3
4
5
6
7
8
9
10dir: function( elem, dir ){
var matched = [],
cur = elem[dir];
while ( cur && cur != document ) {
if ( cur.nodeType == 1 )
matched.push( cur );
cur = cur[dir];
}
return matched;
}
下篇我们来分析为什么要做出这种改变?