当我使用它时,它不起作用:
document.getElementById('gid').onmouseover = functionname();
但是以下方法确实有效:
document.getElementById('gid').onmouseover = 函数名;
谁能解释一下为什么吗?
最佳答案
document.getElementById('gid').onmouseover = functionname
您可以在此处指定 onmouseover
哪个功能将起作用。当 onmouseover
事件被触发时,它将尝试执行此函数。您仅传递函数的引用。
document.getElementById('gid').onmouseover = functionname()
这首先执行您的函数,因为您调用它(查看 ()
)并返回 something
。之后,您的 onmouseover
尝试执行该 某事
,在您的情况下,我认为这不是一个函数。
关于javascript - 函数 Name() 与不带括号的函数名称之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42275970/