老师可以讲讲回调函数吗?
来源:2-5 用css3实现淡入淡出效果(2)
hyperse
2019-07-04 15:49:41
就比如说
function hide($elem,callback){
if($elem.data('status')==='hide') return;
if($elem.data('status')==='hidden') return;
$elem.data('status','hide').trigger('hide');
callback();
}
var silent = {
init:init,
show:function($elem){
show($elem,function(){
$elem.show();
$elem.data('status','shown').trigger('shown');
});
},
hide:function($elem){
hide($elem,function(){
$elem.hide();
$elem.data('status','hidden').trigger('hidden');
});
}
};
3回答
好帮手慕慕子
2019-07-04
同学你好,回调函数就是一个参数,将这个函数作为参数传到另一个函数里面调用。
老师这里先给同举个简单的例子帮助同学理解什么是回调函数。 回调,回调,就是回头调用的意思。主函数的事先干完,回头再调用传进来的那个函数。示例:

上面的代码中,我们先定义了主函数和回调函数,然后再去调用主函数,将回调函数传进去。定义主函数的时候,我们让代码先去执行callback()回调函数,但输出结果却是后输出回调函数的内容
现在我们再来结合同学粘贴的代码来梳理一下代码的流程,帮助同学理解
1.在hide函数中传入了一个回调函数作为参数, 并在该函数中调用了

2. 在下面对象的方法中调用了函数hide, 并传入了一个函数作为回调函数可以在hide中执行, 对应关系如下图所示

这一块确实比较抽象不好理解, 同学目前只需要了解如何使用就可以了, 等练习的多了, 熟练了在返回来看这一块的知识点就比较好理解了
如果帮助到了你, 欢迎采纳!
祝学习愉快~~~
你好大猫
2019-07-04
刚开始接触回调函数 你可以把它理解成一个后执行的函数。例如setTimeout(A:回调函数,延迟时间);
先是执行了setTimeout这个函数,传入了参数A,间隔了一段时间后执行了A,你这样敲几遍 ,熟了自然就通了 不行再问也可以
你好大猫
2019-07-04

你这个例子我用颜色标注出来了 依次执行蓝色 红色 绿色 迷糊了再问
相似问题
回答 1
回答 2