首页 > 关于W3Cschool中,JQuery教程的Callback函数的一点小问题

关于W3Cschool中,JQuery教程的Callback函数的一点小问题

在看w3cschool上面的JQuery部分的教程的时候,看到了这个东西,callback函数。
链接在这里:http://www.w3school.com.cn/jquery/jquery_callback.asp
按照他里面的例子写了一遍,代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>jquery_demo</title>
    <script src="jquery-2.1.4.js"></script>
    <script>
    $(document).ready(function  () {
        $("button").click(function  () {
            $("p").hide(2000,function  () {
                alert("文字已隐藏!");
            });
        });
    });
    </script>
</head>
<body>
    <button type="button">点我点我</button>
    <p>如果不想看到这一段,点上面的按钮吧!</p>
    <p>当然,你在点了按钮之后,这个会隐藏,并弹出警告框来。</p>
</body>
</html>

然后运行了一下,发现一个问题:弹出警告框弹出的是两个(关掉一个还有一个),于是又调整了一下,发现把下面的两对

标签删掉一对,再运行,之弹出一个警告框。
基本确定了,弹出警告框的个数是由p标签的对数决定的。然而到了这里也只是知其然而不知其所以然。求各位有懂的解释下为什么会是这个样子?还有,怎么让它在有多个p标签时只弹出一个警告框?


$('p')会遍历文档中的所有p标签,然后每一个p标签在执行hide之后都有一个回调,你下面有两个p标签,自然执行两次alert

【热门文章】
【热门文章】