javascript - 函数 Name() 与不带括号的函数名称之间的区别?

标签 javascript jquery html

当我使用它时,它不起作用:

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/

相关文章:

javascript - 通过 JavaScript 更改图像?

JavaScript 数字,在内存中的大小都一样吗?

jQuery Accordion 菜单 - 保持 Accordion 菜单对我所在的页面打开

javascript - Bootstrap 模式不会从包含 AJAX 调用创建的内容的模式中显示

asp.net - 为什么当我 float 列表元素时列表的背景颜色消失了?

javascript - 类型错误 : Cannot read property 'startsWith' of undefined node. js V12.18.2

javascript - 带 URL 参数的 React Router

javascript - 仅将某些 CSS 样式从一个元素移动到另一个元素

html - 在网页中叠加三个div

html - 使用 Bootstrap 的具有流体背景的两列页脚