jQuery代码中对回调函数有着广泛的应用,对其有精准的理解是非常有必要的,下面就通过实例对此方法进行简单的介绍。
代码实例如下:
利用回调函数,当div全部隐藏之后弹出一个提示框。
复制代码 代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta content="https://www.jb51.net/" />
<title>脚本之家</title>
<style type="text/css">
div{
height:150px;
width:150px;
background-color:green;
margin-top:10px;
}
</style>
<script type="text/javascript" src="https://www.jb51.net/mytest/jQuery/jquery-1.8.3.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("div").slideUp(2000,function(){alert("隐藏完毕")});
})
})
</script>
</head>
<body>
<div></div>
<button>点击查看效果</button>
</body>
</html>
上面的代码运行非常良好,很有次序。在很多实际应用中往往希望让代码完成某个动作以后再去做另一个动作。
代码貌似应执行的效果应该和上面代码是一样的,但是运行结果且并非我们所预料,而是先弹出提示框,然后再隐藏div元素。这并不是说slideUp()没有开始执行。
复制代码 代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta content="https://www.jb51.net/" />
<title>脚本之家</title>
<style type="text/css">
div{
height:150px;
width:150px;
background-color:green;
margin-top:10px;
}
</style>
<script type="text/javascript" src="https://www.jb51.net/mytest/jQuery/jquery-1.8.3.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("div").slideUp(2000);
alert("隐藏完毕");
})
})
</script>
</head>
<body>
<div></div>
<button>点击查看效果</button>
</body>
</html>
下面简单通俗的总结一下什么是回调函数。看下面这段代码:
复制代码 代码如下:
function a(){alert("我是一个函数")}
a();
以上是最常用的调用函数的方式,用函数的实现直接调用,而回调函数却不是这样的,它是将自己的地址作为参数传递给另一个函数,当发生特定的事件的时候就会使用作为参数传递过来的回调函数地址来调用回调函数。就拿上面使用回调函数的那个代码来说,它是把function函数的地址作为参数传递给slideUp()方法,当slideUp()动作完成之后,就会通过传过来的地址参数调用function函数。