单击按钮前运行事件

Event run before click button

本文关键字:事件 运行 按钮 单击      更新时间:2023-09-26

这是我的代码:

<body>
    <button id="mybtn">Click Me!</button>
     <script>
         document.getElementById("mybtn").onclick = sum(2,5);
        function sum(a,b) {
            document.getElementById("x").innerHTML = a + b;
        }
    </script>
</body>

为什么文档在点击按钮之前显示7?

在执行函数而不是将其分配给时发生了什么

这里有一个解决方案:

document.getElementById("mybtn").onclick = function(){ sum(2,5) };

除了@NetaMeta的答案外,您还可以使用Function.protype.bind()方法从sum函数创建新函数,并准备参数:

document.getElementById("mybtn").onclick = sum.bind(null, 2, 5);