关于调动函数加()的问题
这里我想问,为什么在点击事件时候调用的改变图片函数是带()的,changeImg();而鼠标划入时候调用函数却没用(),而是直接stopAutoplay。之前我问过这个问题,那时候说如果需要自动执行就要加(),需要事件带动就不加(),那么在前面点击事件中为什么又加上了()来调动changImg函数?
23
收起
正在回答 回答被采纳积分+1
2回答
好帮手慕星星
2020-04-13 10:06:51
同学你好,问题解答如下:
1、和event参数没有关系。可以看一下封装的addHandler函数,传入的时间处理函数会直接绑定上,也就是事件触发的时候会立即执行
移入事件就是这样的
而在点击事件中,立即执行的是传入的匿名函数
所以如果想在匿名函数中调用其他函数,是需要加上括号的,否则执行不了。
2、函数中如果需要参数就传入,不需要就不传入
立即执行函数是需要加括号的,这样才能自动触发。如果是事件处理函数,一般不加括号,当事件执行时就会被触发,但是事件处理函数中调用其他函数时是需要加括号的
这两个和优先级没有关系。不确定同学具体想表达的是什么,上面如果没有解决你的疑惑,建议描述具体一些,便于帮助解答。
祝学习愉快!
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星