function aaa(n){
alert("a"+n);
}
function bbb(n){
alert("b"+n);
}
var cb=$.Callbacks();
cb.add(aaa);
cb.add(bbb);
cb.fire("sss"); //利用这个方法可以传参,但是两个函数被传入的参数是一样的
我看了源码,是不是回调函数不可以分别为函数传参?
function aaa(n){
alert("a"+n);
}
function bbb(n){
alert("b"+n);
}
var cb=$.Callbacks();
cb.add(aaa);
cb.add(bbb);
cb.fire("sss"); //利用这个方法可以传参,但是两个函数被传入的参数是一样的
我看了源码,是不是回调函数不可以分别为函数传参?
jQuery参考手册的例子:
function fn1( value ){
console.log( value );
}
function fn2( value ){
fn1("fn2 says:" + value);
return false;
}
var callbacks = $.Callbacks();
callbacks.add( fn1 );
callbacks.fire( "foo!" ); // outputs: foo!
callbacks.add( fn2 );
callbacks.fire( "bar!" ); // outputs: bar!, fn2 says: bar!
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
jQuery 回调队列利用观察者模式形成回调队列.将要执行的函数对象压入回调队列。在执行的时候,传入统一参数对回调队列进行回调。因而,回调函数不可以分别为函数传参。楼上的例子是压入两个回调函数,进行了两次调用,算不得为回调函数传入不同参数。