【发布时间】:2014-09-19 00:32:35
【问题描述】:
我有一个小库,这是我使用的一个函数的片段
HashManager.prototype.on = function(hash, callback) {
if(hash[0] == '#') { hash = hash.substr(1); }
if( typeof this.observers[hash] !== 'object' ) {
this.observers[hash] = [];
}
this.observers[hash].push(callback);
return this.observers[hash][this.observers[hash].length-1];
};
这是我的arr
var ajaxURLS = {
'#!o_kompanii': '/apages/about.html',
'#!production': '/apages/production.html',
'#!gde_kupit': '/apages/gde_kupit.html',
'#!hozyaike_na_zametku': '/apages/hozyaike_na_zametku.html',
'#!news': '/apages/news.html',
'#!contacts': '/apages/contacts.html',
'#!kurochka_po_zernyshku': '/apages/kurochka_po_zernyshku.html'
};
这是我的循环
var HM = new window.HashManager();
$.each(ajaxURLS,function(hash, uri) {
HM.on(hash, function(uri,hash) {
console.log(uri);
console.log(hash);
});
});
我的问题是 console.log 总是打印我数组的最后一个键和值 我怎样才能正确传递参数? 非常感谢,最好的问候
【问题讨论】:
标签: javascript jquery loops callback arguments