调用函数为啥不加()呀

来源:6-3 事件绑定与取消-off

Elisa呀

2020-02-29 15:17:19

我试了下,flash(),就报错了,为什么呢,调用函数不应该家()吗

http://img.mukewang.com/climg/5e5a0ff0096af0b004050255.jpg

<!DOCTYPE html>

<html>


<head>

    <meta charset="UTF-8">

    <title>习题</title>

    <style>

    div {

        width: 300px;

        height: 300px;

        border: 1px solid red;

        text-align: center;

        line-height: 300px;

    }

    </style>

</head>


<body>

    <button class="obj">这个按钮点击后没有效果</button>

    <button class="bind">绑定</button>

    <button class="unbind">取消绑定</button>

    <div style="display: none;">第一个按钮有效果啦</div>

    <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script>

    <script>

    $(document).ready(function(){

        //事件

        function flash(){

            $('div').show().fadeOut('slow');

        }

        //事件绑定

        $('.bind').click(function(){

            $(document)

            .on('click','.obj',flash())

            .find('.obj').text('可用')

        })

        //取消绑定

        $('.unbind').click(function(){

            $(document)

            .off('click','.obj',flash)

            .find('.obj').text('不可用')

        })

    })

    </script>

</body>


</html>


写回答

1回答

好帮手慕粉

2020-02-29

同学你好,同学是说事件绑定的部分吗:

http://img.mukewang.com/climg/5e5a1eb809ad5e8e05300147.jpg

在这是给obj元素,绑定点击事件时执行flash函数的,所以这个地方不用调用,直接将函数名传进去即可。

如果我的回答帮助了你,欢迎采纳,祝学习愉快~

1

0 学习 · 14456 问题

查看课程