Просто оставьте его вне списка параметров, например:
function B(p,u) {
var foo = {};
foo[u] = function() {
alert('visit internal page '+p);
};
$.router(foo);
}
В настоящее время вы указываете параметр p
для внутренней функции, и если он не предоставлен, когда он вызывается (не кажется,это так) что более локальная p
переменная будет undefined
.Вместо этого просто не указывайте его как параметр, и он будет использовать p
из родительской области.