這一段代碼的作用是什么?
//////////
//分解參數(shù) //
//////////
function access(elems, fn, key, value, chainable, emptyGet, raw) {
var i = 0,
len = elems.length;
//如果是一個(gè)對(duì)象,for in遞歸調(diào)用自己
if (jQuery.type(key) === "object") {
chainable = true;
for (i in key) {
access(elems, fn, i, key[i], true, emptyGet, raw);
}
} else if (value !== undefined) {
if (fn) {
fn(elems, key, value);
}
}
return elems
};
//////////
//設(shè)置樣式 //
//////////
function style(elem, name, value, extra) {
var origName = jQuery.camelCase(name),
style = elem.style;
style[name] = value;
}
function css(name, value) {
return access(this, function(elem, name, value) {
return value !== undefined ?
style(elem, name, value) :
jQuery.css(elem, name);
}, name, value, arguments.length > 1);
}
2016-01-15
access===>遞歸拆分{margin:40px,padding:40px},將其賦值到style相對(duì)應(yīng)的key值里面
style ===>取到elem的style值,然后賦值
最后調(diào)用jQuery.css方法,重繪
我是這樣理解的,打斷點(diǎn)可以跟蹤