Cip*_*ipi 13
JavaScript的"回调"是可以传递给其他函数(如函数指针或委托函数)的函数对象,然后在函数完成时或需要时调用.例如,你可以有一个主函数,你可以传递一个它将调用的函数...
主要功能可以如下所示:
function mainFunc(callBack)
{
alert("After you click ok, I'll call your callBack");
//Now lets call the CallBack function
callBack();
}
Run Code Online (Sandbox Code Playgroud)
你会这样称呼它:
mainFunc(function(){alert("LALALALALALA ITS CALLBACK!");}
Run Code Online (Sandbox Code Playgroud)
要么:
function thisIsCallback()
{
alert("LALALALALALA ITS CALLBACK!");
}
mainFunc(thisIsCallback);
Run Code Online (Sandbox Code Playgroud)
这在javascript库中广泛使用.例如,jQuery的animation()函数可以传递这样的函数,以便在动画结束时调用.
将回调函数传递给其他函数并不能保证它将被调用.执行回调调用(calBack())完全取决于该函数的实现.
甚至名称"回叫"也是不言自明的...... =)
它只是一个函数的名称,应该在某些东西之后回调.
它经常与XMLHttpRequest一起使用:
var x = new XMLHttpRequest();
x.onreadystatechange = function(){
if(x.readyState == 4){
callbackfunction(x.responseText);
}
}
x.open('get', 'http://example.com/', true);
x.send(null);
Run Code Online (Sandbox Code Playgroud)
callbackfunction 在这种情况下,它只是一个简单的函数:
function callbackfunction(text){
alert("I received: " + text);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6006 次 |
| 最近记录: |