jQuery.each({parent/parents/parentUntil})加入了各種方法,為什么jquery對象可以直接訪問此方法呢?原因是把這些方法遍歷出來,然后掛載在Jquery 上,最后在返回此方法。
var aJquery={},創建{}對象,ajQuery[name] = function(until, selector) {
return fn(until, selector);
}; 再把一個個方法添加到ajquery 最后直接調用
var aJquery={},創建{}對象,ajQuery[name] = function(until, selector) {
return fn(until, selector);
}; 再把一個個方法添加到ajquery 最后直接調用
2017-11-12
看了一個多小時,終于看懂了。定義dir()用來識別家族樹的特定節點的輩分,然后相對把parent等三個函數封裝成ajQuery,封裝的語句即套用jQuery.each(object, function(index, value){ 搞事情 }),這里的難點是到了{ 搞事情 }這一步的最后面,把{ 搞事情 }的結果返回到上一層的函數作為函數的參數。即,代碼中的function(name, fn)中的fn是jQuery.each(object,function(){})中的object的key:value中的value,key是函數名,value則是函數里的東西。之后就按部就班引用封裝的函數了。
2017-11-09