我有这段代码
function main(b)
{
b.on('func1', onFunc1);
b.on('func2', onFunc2);
}
function onFunc1(a)
{
console.log(a); //prints (for example) 2
console.log(b); //is this possible?
}
所以我的问题是,有什么方法可以传递给函数' onFunc1'名为' b'?
的变量答案 0 :(得分:1)
您可以执行以下操作:
function main(b) {
b.on('func1', function(){ onFunc1(b); });
b.on('func2', function(){ onFunc2(b); });
}
function onFunc1(a) {
console.log(a); //prints (for example) 2
console.log(b); //is this possible?
}
这样做,匿名函数将被调用,并将调用您的处理程序传递您希望它传递的函数。
答案 1 :(得分:-1)
正如文档中所写,您可以插入包含数据的对象作为调用的第二个字段:
function myHandler( event ) {
alert( event.data.foo );
}
$( "p" ).on( "click", { foo: "bar" }, myHandler );
有关详细信息,请参阅jQuery on documentation