调用函数为啥不加()呀
来源:6-3 事件绑定与取消-off
Elisa呀
2020-02-29 15:17:19
我试了下,flash(),就报错了,为什么呢,调用函数不应该家()吗

<!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回答
同学你好,同学是说事件绑定的部分吗:

在这是给obj元素,绑定点击事件时执行flash函数的,所以这个地方不用调用,直接将函数名传进去即可。
如果我的回答帮助了你,欢迎采纳,祝学习愉快~